hkaiser changed the topic of #ste||ar to: STE||AR: Systems Technology, Emergent Parallelism, and Algorithm Research | stellar.cct.lsu.edu | HPX: A cure for performance impaired parallel applications | github.com/STEllAR-GROUP/hpx | Buildbot: http://rostam.cct.lsu.edu/ | Log: http://irclog.cct.lsu.edu/ | GSoD: https://developers.google.com/season-of-docs/
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 245 seconds]
K-ballo1 is now known as K-ballo
nikunj has quit [Remote host closed the connection]
mdiers_ has joined #ste||ar
simbergm has quit [*.net *.split]
Amy2 has quit [Ping timeout: 250 seconds]
Amy2 has joined #ste||ar
simbergm has joined #ste||ar
jgurhem has joined #ste||ar
simbergm has quit [*.net *.split]
simbergm has joined #ste||ar
hkaiser has joined #ste||ar
daissgr has joined #ste||ar
hkaiser has quit [Quit: bye]
hkaiser has joined #ste||ar
<hkaiser> simbergm: I created a PR fixing some leftovers from the component move
<hkaiser> sorry for not seeing it during the review
<simbergm> hkaiser: no problem, thank you! I'll have a look asap
<hkaiser> thanks
hkaiser has quit [Quit: bye]
eschnett has quit [Quit: eschnett]
hkaiser has joined #ste||ar
<hkaiser> simbergm: yt?
<simbergm> hkaiser: here
<hkaiser> the changes to HPX_AddComponent break HPX components external to the core itself
<hkaiser> it now seems to prepend some root directory to all source files, even if those already have a full path
<simbergm> damn, you mean external projects relying on them?
<hkaiser> no external projects creating HPX components
<simbergm> ah, sorry
<hkaiser> by using hpx_add_component
<simbergm> I'll fix that, I know what you're talking about
<hkaiser> can you make that prepend optional?
<simbergm> yeah, something like that should be possible
<simbergm> it's really just for convenience
<hkaiser> could we prepend only for relative paths?
<simbergm> could also work
<simbergm> goes to check if cmake can detect relative paths
<simbergm> I'll try to fix it asap
<hkaiser> I think the explicitly buy-in option would be preferred
<simbergm> absolutely, I wasn't thinking about external components at all
K-ballo has quit [Remote host closed the connection]
K-ballo has joined #ste||ar
<simbergm> made it an explicit option to prepend
<simbergm> it looks like phylanx is using relative paths as well, but they might be interpreted relative to the project root or something like that
<hkaiser> looks good to me, thanks a lot!
<hkaiser> yes, you're right
<simbergm> feel free to merge if you need it soon and you think that it looks reasonable
<simbergm> I didn't test it much at all but it "should work"
<hkaiser> merged, if it still has problems we'll fix it afterwards ;-)
<hkaiser> thanks for fixing it that quickly
<hkaiser> simbergm: hmm, now I see CMake Warning at D:/Devel/hpx/cmake/HPX_AddComponent.cmake:12 (cmake_parse_arguments):
<hkaiser> keyword defined more than once: PREPEND_SOURCE_ROOT
<hkaiser> Call Stack (most recent call first):
<hkaiser> src/CMakeLists.txt:90 (add_hpx_component)
<simbergm> doh, that's me
<simbergm> push to master :(
<simbergm> shall I or you?
<hkaiser> I can do it, push directly to master ok?
<simbergm> hkaiser: ^
<simbergm> yeah, go for it
<hkaiser> simbergm: can't get it to work :/
<hkaiser> could you have a look, please?
<simbergm> hkaiser: sure, I'll give it a try
<simbergm> same error?
<hkaiser> if I change the duplicate to PREPEND_HEADER_ROOT, Phylanx works, but HPX gets strange cmake errors
<simbergm> ok :/
<hkaiser> for instance: CMake Error at D:/Devel/vcpkg/scripts/buildsystems/vcpkg.cmake:198 (_add_library):
<hkaiser> Cannot find source file:
<hkaiser> server/component_storage_server.cpp
<hkaiser> Tried extensions .c .C .c++ .cc .cpp .cxx .cu .m .M .mm .h .hh .h++ .hm
<hkaiser> .hpp .hxx .in .txx
<simbergm> I'll test it properly then
<hkaiser> Call Stack (most recent call first):
<hkaiser> cmake/HPX_AddComponent.cmake:174 (add_library)
<hkaiser> components/component_storage/CMakeLists.txt:27 (add_hpx_component)
<hkaiser> sorry...
<simbergm> hmm, that one on the other hand should have the root prepended
<hkaiser> right
<simbergm> I'll look at it, don't worry
<simbergm> but phylanx was happy with that, right?
<hkaiser> yes
<simbergm> ok, so it configures for me now
<simbergm> I had another typo in partitioned vector
<simbergm> did you already make the change on master?
<hkaiser> no
<simbergm> I'll push in that case
<hkaiser> I'll tets it then
<simbergm> hkaiser: there, give it a try
<hkaiser> works, thanks a lot!
<simbergm> good, sorry for the trouble
eschnett has joined #ste||ar
<hkaiser> no worries!
hkaiser has quit [Quit: bye]
hkaiser has joined #ste||ar
<hkaiser> simbergm: you guys are on the roll!
<hkaiser> simbergm: we should create a review queue for the modules as the PRs depend on each other
rori has joined #ste||ar
aserio has joined #ste||ar
<hkaiser> simbergm: is #3636 refelcting the order the PRs should be merged?
<simbergm> hkaiser: yeah, well, we're leaving the hard part for last... ;)
<simbergm> 3636 does not reflect the order
<simbergm> basic rule is oldest first
<hkaiser> simbergm: I'm looking for some guidance which ones I should review next
<hkaiser> ahh, ok
<simbergm> yep, #3957 and #3979 first, please :)
<hkaiser> simbergm: just please give me some time to keep up with Phylanx wrt the #include changes ;-)
<hkaiser> so no more than one a day, perhaps ?
<simbergm> hkaiser: oh, right
<simbergm> you can keep the old headers (mostly) because of the compatibility headers, unless you have deprecation warnings and werror turned on?
<simbergm> and we don't expect you to have time to go through them immediately :) we'll just keep opening them to have the ci check for silly errors
<hkaiser> yah, I think the compatibility is on by default which breaks all builds because of -werror
<simbergm> mmh, we could turn the warnings off but then we wouldn't catch old headers in hpx itself
<hkaiser> right
<hkaiser> no worries
<simbergm> in any case, there's no big rush, just take your time
<simbergm> I can approve them some as well, but I didn't want to so far because I did a bunch of the changes
<hkaiser> simbergm: I'm in Cologne right now, so might have more time
<simbergm> I'd be blind to dumb things
<simbergm> hmm, you're saying the meeting isn't going to be very interesting? ;)
<hkaiser> it never is ;-)
<simbergm> btw, I'm sorry I keep force pushing some PRs all the time
<hkaiser> simbergm: no problem
<jgurhem> Hi ! I'm working on a distributed LU factorization with HPX. I already have a multithreaded version (https://github.com/jgurhem/HPX_LA) and I would like to go for a distributed version. Could you give me some pointers so that I can make a distributed version ? Jérôme
<hkaiser> jgurhem: you might want to look either at the 1d_stencil sequence of examples or the stencil 2d example from the tutorials
<simbergm> jgurhem: hey
<simbergm> hkaiser: for context, jgurhem was at the course at hlrs
<simbergm> I guess your best bet is channels then ;)
<jgurhem> Hi ! I guess it is. The answer was super fast !
<hkaiser> yah, channels are nice abstractions, not sure if they are useful for an LU factorization
<hkaiser> things like a distributed object might be better suited
<jgurhem> hkaiser Thank you. I'm currently looking into the 1d stencil from the examples
nikunj has joined #ste||ar
<hkaiser> jgurhem: I think you should understand how HPX is doing remote function invocation (actions)
<hkaiser> the rest is very similar to 'normal' code
nikunj has quit [Remote host closed the connection]
jgurhem has quit [Ping timeout: 260 seconds]
aserio has quit [Ping timeout: 276 seconds]
hkaiser has quit [Quit: bye]
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 248 seconds]
K-ballo1 is now known as K-ballo
aserio has joined #ste||ar
rori has quit [Quit: WeeChat 1.9.1]
daissgr has quit [Ping timeout: 245 seconds]
jgurhem has joined #ste||ar
aserio has quit [Ping timeout: 276 seconds]
hkaiser has joined #ste||ar
jgurhem has quit [Ping timeout: 260 seconds]
aserio has joined #ste||ar
K-ballo1 has joined #ste||ar
K-ballo has quit [Ping timeout: 246 seconds]
K-ballo1 is now known as K-ballo
jgurhem has joined #ste||ar
jgurhem has quit [Ping timeout: 260 seconds]
hkaiser has quit [Quit: bye]
eschnett has quit [Quit: eschnett]
diehlpk_mobile has joined #ste||ar
diehlpk_mobile has quit [Ping timeout: 276 seconds]
eschnett has joined #ste||ar
aserio has left #ste||ar [#ste||ar]
nikunj has joined #ste||ar
<Yorlik> When writing a struct {void * ptr; uint32_t i;} (=12 bytes w/o padding) to some pointer location in a buffer: Is it defined if the padding will be written or not? Is it UB or is it implementation defined what happens?
<Yorlik> I am experimenting with a super packed event type and am restricting myself to 16 bytes with 2 bytes being the event type and the rest depending on the event type, using a union and accessor APIs with casts in the functions.
<Yorlik> The event struct essentially is a struct {std::byte bytes[14]; uint16_t event_type};
<Yorlik> And the bytes will be reinterpreted to whatever.Making them a union didn't really work, since as soon as theres a pointer inside the union grows to 16 byte alignment already
<Yorlik> So I desided to just use a buffer and an event type.
<Yorlik> But writing a struct like {void*p; uint32_t i;} makes me nervous