Prefer `Kokkos::Experimental::sort_by_key()` and drop rocThrust/oneDPL dependencies
Defer to Kokkos and get rid of all the churn, both on the cmake-side to handle dependencies and the code path specializations.
I kept Details::KokkosExt::sortByKey() because I don't think Kokkos pushes a profiling region.
I am not sure how much we care about the ARBORX_ENABLE_{ONEDPL,ROCTHRUST} exported CMake variables and macros. I just dropped them. We could technically map them to their Kokkos counterparts but I don't think it is worth the trouble.
In file included from /opt/kokkos/include/Kokkos_Sort.hpp:25:
In file included from /opt/kokkos/include/sorting/Kokkos_SortPublicAPI.hpp:20:
/opt/kokkos/include/sorting/./impl/Kokkos_SortImpl.hpp:73:10: fatal error: 'oneapi/dpl/execution' file not found
#include <oneapi/dpl/execution>
^~~~~~~~~~~~~~~~~~~~~~
The CUDA-12.0.1-NVCC-CUDA-AWARE-MPI build failure is unrelated and denotes an issue with the testing machine (fetnat_06)
nvlink fatal : Could not open input file '/usr/lib/x86_64-linux-gnu/libcuda.so'
I tried the same in #1191. I remember seeing some performance regression. You would need to run a lot of experiments to make sure there's none.
I tried the same in #1191. I remember seeing some performance regression. You would need to run a lot of experiments to make sure there's none.
Should I assume you tested with the performance fix on random access iterators https://github.com/kokkos/kokkos/pull/7304 ?
Should I assume you tested with the performance fix on random access iterators kokkos/kokkos#7304 ?
Don't know. Regardless, we depend on Kokkos 4.5, and that patch appeared only in 4.6.01.
we depend on Kokkos 4.5, and that patch appeared only in 4.6.01.
Kokkos 5.0 is a couple weeks out. Are we still committed to only supporting the last 2 Kokkos minor releases or is that something you were wanting to change.
Kokkos 5.0 is a couple weeks out. Are we still committed to only supporting the last 2 Kokkos minor releases or is that something you were wanting to change.
I had bad experience of keeping with the last two releases, as propagating the new features into the projects that depend on Trilinos is so problematic.
Trilinos 16.2 was released with Kokkos 4.7.1.