Update Kokkos library in LAMMPS to v4.0
This commit is contained in:
@ -1,3 +1,19 @@
|
||||
//@HEADER
|
||||
// ************************************************************************
|
||||
//
|
||||
// Kokkos v. 4.0
|
||||
// Copyright (2022) National Technology & Engineering
|
||||
// Solutions of Sandia, LLC (NTESS).
|
||||
//
|
||||
// Under the terms of Contract DE-NA0003525 with NTESS,
|
||||
// the U.S. Government retains certain rights in this software.
|
||||
//
|
||||
// Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions.
|
||||
// See https://kokkos.org/LICENSE for license information.
|
||||
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
||||
//
|
||||
//@HEADER
|
||||
|
||||
#include <fstream>
|
||||
#include <gtest/gtest.h>
|
||||
#include "Kokkos_Core.hpp"
|
||||
@ -489,7 +505,13 @@ struct TestComplexBesselJ0Y0Function {
|
||||
Kokkos::deep_copy(d_z, h_z);
|
||||
|
||||
// Call Bessel functions
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace>(0, N), *this);
|
||||
#if (HIP_VERSION_MAJOR == 5) && (HIP_VERSION_MINOR == 4)
|
||||
using Property =
|
||||
Kokkos::Experimental::WorkItemProperty::ImplForceGlobalLaunch_t;
|
||||
#else
|
||||
using Property = Kokkos::Experimental::WorkItemProperty::None_t;
|
||||
#endif
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace, Property>(0, N), *this);
|
||||
Kokkos::fence();
|
||||
|
||||
Kokkos::deep_copy(h_cbj0, d_cbj0);
|
||||
@ -618,8 +640,8 @@ struct TestComplexBesselJ0Y0Function {
|
||||
|
||||
Kokkos::deep_copy(d_z_large, h_z_large);
|
||||
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace, TestLargeArgTag>(0, 1),
|
||||
*this);
|
||||
Kokkos::parallel_for(
|
||||
Kokkos::RangePolicy<ExecSpace, Property, TestLargeArgTag>(0, 1), *this);
|
||||
Kokkos::fence();
|
||||
|
||||
Kokkos::deep_copy(h_cbj0_large, d_cbj0_large);
|
||||
@ -779,7 +801,13 @@ struct TestComplexBesselJ1Y1Function {
|
||||
Kokkos::deep_copy(d_z, h_z);
|
||||
|
||||
// Call Bessel functions
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace>(0, N), *this);
|
||||
#if (HIP_VERSION_MAJOR == 5) && (HIP_VERSION_MINOR == 4)
|
||||
using Property =
|
||||
Kokkos::Experimental::WorkItemProperty::ImplForceGlobalLaunch_t;
|
||||
#else
|
||||
using Property = Kokkos::Experimental::WorkItemProperty::None_t;
|
||||
#endif
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace, Property>(0, N), *this);
|
||||
Kokkos::fence();
|
||||
|
||||
Kokkos::deep_copy(h_cbj1, d_cbj1);
|
||||
@ -908,8 +936,8 @@ struct TestComplexBesselJ1Y1Function {
|
||||
|
||||
Kokkos::deep_copy(d_z_large, h_z_large);
|
||||
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace, TestLargeArgTag>(0, 1),
|
||||
*this);
|
||||
Kokkos::parallel_for(
|
||||
Kokkos::RangePolicy<ExecSpace, Property, TestLargeArgTag>(0, 1), *this);
|
||||
Kokkos::fence();
|
||||
|
||||
Kokkos::deep_copy(h_cbj1_large, d_cbj1_large);
|
||||
@ -1067,7 +1095,13 @@ struct TestComplexBesselI0K0Function {
|
||||
Kokkos::deep_copy(d_z, h_z);
|
||||
|
||||
// Call Bessel functions
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace>(0, N), *this);
|
||||
#if (HIP_VERSION_MAJOR == 5) && (HIP_VERSION_MINOR == 4)
|
||||
using Property =
|
||||
Kokkos::Experimental::WorkItemProperty::ImplForceGlobalLaunch_t;
|
||||
#else
|
||||
using Property = Kokkos::Experimental::WorkItemProperty::None_t;
|
||||
#endif
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace, Property>(0, N), *this);
|
||||
Kokkos::fence();
|
||||
|
||||
Kokkos::deep_copy(h_cbi0, d_cbi0);
|
||||
@ -1189,8 +1223,8 @@ struct TestComplexBesselI0K0Function {
|
||||
|
||||
Kokkos::deep_copy(d_z_large, h_z_large);
|
||||
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace, TestLargeArgTag>(0, 1),
|
||||
*this);
|
||||
Kokkos::parallel_for(
|
||||
Kokkos::RangePolicy<ExecSpace, Property, TestLargeArgTag>(0, 1), *this);
|
||||
Kokkos::fence();
|
||||
|
||||
Kokkos::deep_copy(h_cbi0_large, d_cbi0_large);
|
||||
@ -1302,7 +1336,13 @@ struct TestComplexBesselI1K1Function {
|
||||
Kokkos::deep_copy(d_z, h_z);
|
||||
|
||||
// Call Bessel functions
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace>(0, N), *this);
|
||||
#if (HIP_VERSION_MAJOR == 5) && (HIP_VERSION_MINOR == 4)
|
||||
using Property =
|
||||
Kokkos::Experimental::WorkItemProperty::ImplForceGlobalLaunch_t;
|
||||
#else
|
||||
using Property = Kokkos::Experimental::WorkItemProperty::None_t;
|
||||
#endif
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace, Property>(0, N), *this);
|
||||
Kokkos::fence();
|
||||
|
||||
Kokkos::deep_copy(h_cbi1, d_cbi1);
|
||||
@ -1424,8 +1464,8 @@ struct TestComplexBesselI1K1Function {
|
||||
|
||||
Kokkos::deep_copy(d_z_large, h_z_large);
|
||||
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace, TestLargeArgTag>(0, 1),
|
||||
*this);
|
||||
Kokkos::parallel_for(
|
||||
Kokkos::RangePolicy<ExecSpace, Property, TestLargeArgTag>(0, 1), *this);
|
||||
Kokkos::fence();
|
||||
|
||||
Kokkos::deep_copy(h_cbi1_large, d_cbi1_large);
|
||||
@ -1533,7 +1573,13 @@ struct TestComplexBesselH1Function {
|
||||
Kokkos::deep_copy(d_z, h_z);
|
||||
|
||||
// Call Hankel functions
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace>(0, N), *this);
|
||||
#if (HIP_VERSION_MAJOR == 5) && (HIP_VERSION_MINOR == 4)
|
||||
using Property =
|
||||
Kokkos::Experimental::WorkItemProperty::ImplForceGlobalLaunch_t;
|
||||
#else
|
||||
using Property = Kokkos::Experimental::WorkItemProperty::None_t;
|
||||
#endif
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<ExecSpace, Property>(0, N), *this);
|
||||
Kokkos::fence();
|
||||
|
||||
Kokkos::deep_copy(h_ch10, d_ch10);
|
||||
|
||||
Reference in New Issue
Block a user