Gathering DOFs on CUDA #560
-
Hi everyone, I have been studying the GPU kernels of NekRS for elliptic equations, specifically focusing on the axhelm kernel. From my understanding, the matrix-vector multiplication is performed on the separated degrees of freedom (DOFs) per element. There should be an assembly ("gathering") phase where duplicated DOFs are accumulated into physical DOFs. I believe you call it "gather-scatter operator". In classical Nek, it seems to be in However, in NekRS I have been unable to locate a CUDA kernel where this gathering and scattering occur. Could someone please point me in the right direction? Thank you! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
For nekrs v23, the We use OCCA as an abstract layer for all device/CPU backends so you won't find CUDA kernel in the source code. See also 3.2 parallel communication in this paper for different communication protocol. |
Beta Was this translation helpful? Give feedback.
For nekrs v23, the
ogs
is put under gslib (gather scatter library)https://github.com/Nek5000/nekRS/tree/master/3rd_party/gslib/ogs
We use OCCA as an abstract layer for all device/CPU backends so you won't find CUDA kernel in the source code.
See also 3.2 parallel communication in this paper for different communication protocol.