K-ballo 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/
hkaiser has joined #ste||ar
bita has joined #ste||ar
bita has quit [Ping timeout: 245 seconds]
K-ballo has quit [Quit: K-ballo]
shubham has joined #ste||ar
parsa has quit [Read error: Connection reset by peer]
parsa has joined #ste||ar
hkaiser has quit [Ping timeout: 245 seconds]
shubham has quit [Quit: Connection closed for inactivity]
diehlpk_work has quit [Ping timeout: 276 seconds]
syrex has joined #ste||ar
<srinivasyadav227> any reasons why at some places std::pair or tuple is used and in some other places util::in_out_result is used for returing results in util/transform_loop.hpp?
<gonidelis[m]> freenode_srinivasyadav227[m]: we adapt std::pair to `in_out_result` and std::tuple to `in_in_out_result`
<gonidelis[m]> check the C++20 standard
<srinivasyadav227> so everything should be now in_out_result and in_in_out_result right?
RostamLog has joined #ste||ar
K-ballo has joined #ste||ar
<gonidelis[m]> srinivasyadav227: i don't know if all pairs have turned into in_out_results
prahitha[m] has joined #ste||ar
<gonidelis[m]> you can check here for sure
<srinivasyadav227> okay ;)
parsa has quit [Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net]
parsa has joined #ste||ar
<gonidelis[m]> K-ballo:
<gonidelis[m]> Does that https://ericniebler.github.io/range-v3/#autotoc_md7 mean that I can use `views::filter | some_mutating_view` ?
<gonidelis[m]> actually, what does "invalidating iterators or sentinel" mean?
<gonidelis[m]> is it equivalent to "mutating the range"?
hkaiser has joined #ste||ar
<K-ballo> gonidelis[m]: no, it's not equivalent, iterator invalidation is its own thing
<K-ballo> container give invalidation guarantees for all their operations
<K-ballo> you can only do those operations that will not invalidate the iterators (but may invalidate the elements themselves, or even references)
hkaiser_ has joined #ste||ar
hkaiser has quit [Ping timeout: 250 seconds]
hkaiser_ has quit [Quit: bye]
hkaiser has joined #ste||ar
bita has joined #ste||ar
<gnikunj[m]> hkaiser: just realized I have induction session today in 5min. I'll join in the meeting once I get done with the induction.
<hkaiser> gnikunj[m]: yes
<K-ballo> 218 is just `f(&tmp)`
<K-ballo> 331 too
<K-ballo> srinivasyadav227: the formal INVOKE definition is here https://en.cppreference.com/w/cpp/utility/functional/invoke, but you can just imagine it as a plain function call
<srinivasyadav227> tmp is a Vc::vector type, so is it like calling operator() on Vc::vector?
<K-ballo> no, on f
<K-ballo> `f(&tmp)`
<srinivasyadav227> ok, got it
<K-ballo> > Otherwise, INVOKE(f, t1, t2, ..., tN) is equivalent to f(t1, t2, ..., tN)
<srinivasyadav227> oh ok, its like plain function call, got it, but why are we passing &tmp instead of tmp
syrex has quit [Quit: syrex]
<mdiers[m]> hkaiser: Have you already looked at 5117? My last example also crashes on our older nodes from 2012. I just can't narrow it down any further.
<hkaiser> mdiers[m]: not yet, sorry
<hkaiser> srinivasyadav227: because 'f' expects a pointer?
<mdiers[m]> hkaiser: Too bad, but I can understand it. You have enough other things.
<hkaiser> mdiers[m]: I was away for two weeks and now I have to catch up with things
<mdiers[m]> hkaiser: No problem. I was also busy with other things in the last weeks ;-)
<hkaiser> srinivasyadav227: but things do compile, yes?
<srinivasyadav227> previously yes, with out transform_loop_ind
<hkaiser> well, _ind doesn't expect for 'f' to do the dereference, so this needs to be adapted
<srinivasyadav227> yes, so it should be changed in traits?
<hkaiser> well, whatever it takes
<srinivasyadav227> ok
<hkaiser> I don't know if the compiler optimization would affect the datapar parts in similar ways
<srinivasyadav227> yes, but existing datapar dont work now as f expects dereferenced value
diehlpk_work has joined #ste||ar
<hkaiser> srinivasyadav227: it should be analogous to the non-datapar case, the difference is where the dereference happens
<srinivasyadav227> hkaiser: yes, i got it just now ;-)
hkaiser has quit [Read error: Connection reset by peer]
hkaiser has joined #ste||ar
<pedro_barbosa[m]> diehlpk_work: I was using the examples on the HXPCL repository to try out some stuff and while I was attempting to change the kernel from the /hpxcl-master/examples/cuda/example_kernel.cu, nothing was happening, so I decided to delete the file and the build_kernel_from_file program still works despite the kernel file missing, am I missing something here?
<diehlpk_work> pedro_barbosa[m], I am at the colloqium and I will double checl later
<pedro_barbosa[m]> Ok, thank you
<diehlpk_work> pedro_barbosa[m], In which folder are you executing the example?
<diehlpk_work> pedro_barbosa[m], There are few things:
<diehlpk_work> 1) if you change the file https://github.com/STEllAR-GROUP/hpxcl/tree/master/examples/cuda/example_kernel.cu and just run the example, it will not ce updated in
<diehlpk_work> in the build folder
<diehlpk_work> So you have to run cmake again or edit the example in the build folder as well
<diehlpk_work> So it might could have happend that you still compiled the old file
<diehlpk_work> 2) Be ware with the kernel names and the NVRTC compiler
<diehlpk_work> It can happen that there is still a kernel with the same name around.
<pedro_barbosa[m]> Oh I was only running the makefile, not building itagain
<diehlpk_work> I changed the name of the two kernels in the examples
<diehlpk_work> Ok, the cmake copies the example.cu from the src to the build folder
<pedro_barbosa[m]> Is there a way to run cmake only for the examples?
<diehlpk_work> I think the easiest would be if you just edit the cu file in the build folder
<pedro_barbosa[m]> and if I edit it there it should work?
<diehlpk_work> At least you would compile the correct file
<diehlpk_work> I experienced that you should rename the kernel, if you experience issues
<diehlpk_work> the kernel's name is sum and the nrvtc compiler keeps compiled files
<diehlpk_work> So if you compile again a kernel with the same name, but the body changed it is might not compiled again
<pedro_barbosa[m]> Ok got it, edited both kernel files from the /hpxcl-master/build/examples/cuda and /hpxcl-master/examples/cuda
<pedro_barbosa[m]> folders compiled and it worked
<diehlpk_work> Good
<pedro_barbosa[m]> also, I only had to change the kernels and run the program, didn't have to compile for it to work
<pedro_barbosa[m]> also, I have a doubt on the example itself (https://github.com/STEllAR-GROUP/hpxcl/blob/master/examples/cuda/build_kernel_from_file.cpp) on the line 78 shouldn't it be n[0]=SIZE; instead of result[0]=SIZE;?
nanmiao has joined #ste||ar
bita has quit [Ping timeout: 250 seconds]
bita has joined #ste||ar