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
Use Kokkos::abort directly #14772
Use Kokkos::abort directly #14772
Conversation
139daac
to
714dfa8
Compare
/rebuild |
2 similar comments
/rebuild |
/rebuild |
It looks like the MPI build might be hanging. Can this be related to this PR? |
This pull request should only inline the call to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is of course a bit disappointing, because Kokkos_Core.hpp
pulls in many thousands of lines of code. Is the expected increase in compile time measurable?
We are trying to address that in the next Locally I am seeing,
for a debug build of the library and
without this patch. |
714dfa8
to
1e834eb
Compare
That seems acceptable to me. I'm ok with merging, but maybe we can get a second vote. |
Thank you also for testing this out! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the increase in compile time is not nice, but acceptable, so let us move forward here.
Part of #14751. This reverts some changes in #14753.
CUDA
andHIP
device functions can only be used in a different translation unit if special flags are passed that allow this. However, allowing relocatable device code oftentimes prevents optimization. In particular, it doesn't seem worth it if we would only need it forkokkos_abort
. Thus, this pull request usesKokkos::abort
directly at the cost of includingKokkos_Core.hpp
. An alternative would be to just ignoreAssert
in kernels executed on the device.