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 quit [Quit: bye]
<rachitt_shah[m]>
We'll be having the bi-weekly sync up this week if I'm correct?
Yorlik has joined #ste||ar
Yorlik has quit [Ping timeout: 250 seconds]
Yorlik has joined #ste||ar
Yorlik has quit [Client Quit]
<ms[m]>
rachitt_shah: correct, on thursday
<gnikunj[m]>
ms: the commit removed those seg faults
<gnikunj[m]>
thanks for working on it!
<gnikunj[m]>
Now I fully understand what you meant the other day
<ms[m]>
gnikunj: nice 👍️ did it help with other segfaults that you were seeing as well, or you don't know yet (or do I misremember)?
<gnikunj[m]>
ms haven't experienced any other seg faults yet. I tried playing with code changing bits of code and I am yet to observe anything strange.
<gnikunj[m]>
ms: Is there a way to deep copy a 3D Kokkos View from one execution space to another? From the looks of this, it seems like it is not: https://github.com/kokkos/kokkos/issues/2603
<gnikunj[m]>
I'm using Kokkos::View<double** [2], Kokkos::CudaSpace> and Kokkos::View<double** [2], Kokkos::Experimental::HPX>
diehlpk_work has joined #ste||ar
<gnikunj[m]>
hkaiser: yt?
<hkaiser>
gnikunj[m]: here
<gnikunj[m]>
are you free for a call?
<ms[m]>
gnikunj: it's most definitely possible, the thing to look out for is that the default layout on a gpu is different than the default on a cpu, and you have to explicitly choose which layout you want to use
<ms[m]>
I'll see if I can find some example of this
<gnikunj[m]>
ms: that will be very helpful, thanks!
<ms[m]>
gnikunj: see https://github.com/kokkos/kokkos/wiki/Kokkos::create_mirror, and also just the ViewType::HostMirror typedef, that gives you a compatible layout on the host side, and should allow you to deep copy between device and host
<gnikunj[m]>
this is exactly what I want! Thanks a lot!
<gnikunj[m]>
ms: from the looks of it, I need to define a cuda View first and then create a mirror view passing that as an argument, right?
<ms[m]>
yes, that's how you'd typically do it
<gnikunj[m]>
got it, thanks!
<ms[m]>
you can skip the call to create_mirror view if you don't need the same contents in the host view right away
<gnikunj[m]>
hkaiser: let me know if you have some spare time today for a call. Otherwise, let's do it tomorrow morning?
<gnikunj[m]>
<ms[m] "you can skip the call to create_"> essentially I want to create work on a host view first and then copy the contents over to device side and then work on the device end (math algorithms are still not cuda friendly, so I need to do the initialization on host first and then copy things to device)
<ms[m]>
gnikunj: ok, if you need to do part of the work on the gpu and part on the cpu you might want to try both layouts
<ms[m]>
and now that I think about it there must be a way to copy between different layouts even if it's slow but I can't find anything on it now...
<gnikunj[m]>
Right, I'll try them out.
<hkaiser>
gnikunj[m]: I could meet any time today
<gnikunj[m]>
hkaiser: great. Does 20min from now work?