Update Kokkos library in LAMMPS to v4.3.0

This commit is contained in:
Stan Gerald Moore
2024-04-05 08:20:57 -06:00
parent 2927471892
commit f382eac5c2
393 changed files with 13253 additions and 12499 deletions

View File

@ -93,7 +93,7 @@ class load_element_aligned {
bool host_load(T const* mem, std::size_t n,
Kokkos::Experimental::simd<T, Abi>& result) const {
if (n < result.size()) return false;
result.copy_from(mem, Kokkos::Experimental::element_aligned_tag());
result.copy_from(mem, Kokkos::Experimental::simd_flag_default);
return true;
}
template <class T, class Abi>
@ -101,7 +101,26 @@ class load_element_aligned {
T const* mem, std::size_t n,
Kokkos::Experimental::simd<T, Abi>& result) const {
if (n < result.size()) return false;
result.copy_from(mem, Kokkos::Experimental::element_aligned_tag());
result.copy_from(mem, Kokkos::Experimental::simd_flag_default);
return true;
}
};
class load_vector_aligned {
public:
template <class T, class Abi>
bool host_load(T const* mem, std::size_t n,
Kokkos::Experimental::simd<T, Abi>& result) const {
if (n < result.size()) return false;
result.copy_from(mem, Kokkos::Experimental::simd_flag_aligned);
return true;
}
template <class T, class Abi>
KOKKOS_INLINE_FUNCTION bool device_load(
T const* mem, std::size_t n,
Kokkos::Experimental::simd<T, Abi>& result) const {
if (n < result.size()) return false;
result.copy_from(mem, Kokkos::Experimental::simd_flag_aligned);
return true;
}
};
@ -116,8 +135,7 @@ class load_masked {
for (std::size_t i = 0; i < n; ++i) {
mask[i] = true;
}
where(mask, result)
.copy_from(mem, Kokkos::Experimental::element_aligned_tag());
where(mask, result).copy_from(mem, Kokkos::Experimental::simd_flag_default);
where(!mask, result) = 0;
return true;
}
@ -130,8 +148,7 @@ class load_masked {
for (std::size_t i = 0; i < n; ++i) {
mask[i] = true;
}
where(mask, result)
.copy_from(mem, Kokkos::Experimental::element_aligned_tag());
where(mask, result).copy_from(mem, Kokkos::Experimental::simd_flag_default);
where(!mask, result) = T(0);
return true;
}