-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ddc::for_each should be marked KOKKOS_FUNCTION #695
Comments
It could be possible to make it We tried to work on that a moment ago, see https://github.com/CExA-project/ddc/pull/174/files, it has never been merged. We have never found a trick to make it work with a single name so far. |
Oh ok you looked at it already then. Do you know how Kokkos deals with the problem, which should appear in |
Regarding the team policy, you see that Kokkos also annotates the functions https://github.com/kokkos/kokkos/blob/14be07bb436da168206b6040bf6a4d4da4f470eb/core/src/Cuda/Kokkos_Cuda_Team.hpp#L488-L504. Kokkos also does it for a host team policy, https://github.com/kokkos/kokkos/blob/14be07bb436da168206b6040bf6a4d4da4f470eb/core/src/impl/Kokkos_HostThreadTeam.hpp#L780-L790. A difference between Kokkos and DDC is that in DDC we wanted to provide a |
Ok I see, thanks for the explanation this is clear! I will try to see if I can get an additional KOKKOS_FUNCTION version of Also, do you anticipate an issue due to the usage of |
As discussed on the slack, not particularly because compilers have been able to handle |
I am trying to solve the problem and I agree this does not seem to be feasible with a single-name function. Can I make a MR where I add a |
Otherwise annotating the existing for_each with:
Suppress the warnings. |
We cannot take this approach. There is no documentation about CUDA pragmas. And what about a warning that would be triggered for a good reason ? |
Closing as it is a duplicate of #172 |
Am I correct ? Is the issue related to
std::array
member functions not being marked__device__
?The text was updated successfully, but these errors were encountered: