Update Kokkos library in LAMMPS to v3.4.1

This commit is contained in:
Stan Gerald Moore
2021-05-27 08:45:16 -06:00
parent 40a5c2de5b
commit 7d2f252568
25 changed files with 248 additions and 153 deletions

View File

@ -44,7 +44,7 @@ IF(Kokkos_ENABLE_OPENMP)
)
ENDIF()
foreach(Tag Threads;Serial;OpenMP;Cuda;HPX;HIP;SYCL)
foreach(Tag Threads;Serial;OpenMP;Cuda;HPX;HIP;SYCL;OpenMPTarget)
# Because there is always an exception to the rule
if(Tag STREQUAL "Threads")
set(DEVICE "PTHREAD")

View File

@ -109,6 +109,16 @@ struct RandomProperties {
}
};
// FIXME_OPENMPTARGET: Need this for OpenMPTarget because contra to the standard
// llvm requires the binary operator defined not just the +=
KOKKOS_INLINE_FUNCTION
RandomProperties operator+(const RandomProperties& org,
const RandomProperties& add) {
RandomProperties val = org;
val += add;
return val;
}
template <class GeneratorPool, class Scalar>
struct test_random_functor {
using rnd_type = typename GeneratorPool::generator_type;

View File

@ -370,7 +370,10 @@ template <class ExecutionSpace, typename KeyType>
void test_sort(unsigned int N) {
test_1D_sort<ExecutionSpace, KeyType>(N);
test_3D_sort<ExecutionSpace, KeyType>(N);
// FIXME_OPENMPTARGET: OpenMPTarget doesn't support DynamicView yet.
#ifndef KOKKOS_ENABLE_OPENMPTARGET
test_dynamic_view_sort<ExecutionSpace, KeyType>(N);
#endif
test_issue_1160_sort<ExecutionSpace>();
}
} // namespace Impl