kokkos-kernels icon indicating copy to clipboard operation
kokkos-kernels copied to clipboard

cmake: add CMake language support for CUDA/HIP

Open rbberger opened this issue 2 years ago • 5 comments

Alternative to #2084

rbberger avatar Apr 10 '24 22:04 rbberger

Status Flag 'Pre-Test Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging NO INSPECTION HAS BEEN PERFORMED ON THIS PULL REQUEST! - This PR must be inspected by setting label 'AT: PRE-TEST INSPECTED'.

kokkos-devops-admin avatar Apr 10 '24 22:04 kokkos-devops-admin

Is there a reason to assume that only users of Kokkos Kernels in Trilinos will need this vs users of the library that might have precompiled it and then compiled Trilinos against it?

lucbv avatar Apr 10 '24 23:04 lucbv

Also if you have some testing instruction for this I'm happy to follow them, I don't think CI will be able to help us assess this PR.

lucbv avatar Apr 10 '24 23:04 lucbv

Is there a reason to assume that only users of Kokkos Kernels in Trilinos will need this vs users of the library that might have precompiled it and then compiled Trilinos against it?

This is an incremental change to tackle the case when kokkos-kernels is built in isolation (standalone) and kokkos is already built. I'm looking at this from a Spack perspective, where each package is built on its own. Trilinos is not a priority for me at the moment, but could very well be added later if needed. (the standalone and Trilinos bits seem to share CMake logic, so it might just mean some extra variables and checking to cover the case where Kokkos_COMPILE_LANGUAGE isn't set; it is only set in KokkosConfig.cmake during find_package at the moment)

rbberger avatar Apr 11 '24 01:04 rbberger

Also if you have some testing instruction for this I'm happy to follow them, I don't think CI will be able to help us assess this PR.

Build kokkos for CUDA as usual but don't use the wrapper also add Kokkos_ENABLE_COMPILE_AS_CMAKE_LANGUAGE=ON and CMAKE_CUDA_ARCHITECTURES set to something meaningful (80 for ampere). Then build kokkos-kernels with the kokkos installation in the CMAKE_PREFIX_PATH and also set CMAKE_CUDA_ARCHITECTURES.

The same could be tested with ROCm, the variables then change to CMAKE_HIP_COMPILER and CMAKE_HIP_ARCHITECTURES.

Let me know if you need more detail than that. For Spack we're still in the process to updating the spackages upstream https://github.com/spack/spack/pull/43517. Once those are in it could be also tested that way (that's how I tested it: I built kokkos +cmake_lang+cuda cuda_arch=80 and then built kokkos-kernels manually using that install)

rbberger avatar Apr 11 '24 01:04 rbberger

@rbberger Thanks for the PR! I tested it out today on CUDA and HIP. I just recommend some changes that are in the patch below:

  • Set the language on source files that are compiled into executables, not just libraries. This is necessary for building with -DKokkosKernels_ENABLE_TESTS=ON and/or -DKokkosKernels_ENABLE_EXAMPLES=ON.
  • Set CMAKE_<lang>_ARCHITECTURES based on Kokkos_<lang>_ARCHITECTURES automatically, instead of requiring the user to set it again for KokkosKernels. This matches the behavior for the old system, where Kokkos's CXX flags were passed automatically to KokkosKernels. BTW, Kokkos can also auto-detect the GPU architecture at configure time if none are explicitly turned on.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3217ef2aa..d8cdd203f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -129,6 +129,12 @@ ELSE()
     FIND_PACKAGE(Kokkos REQUIRED)
     IF(Kokkos_COMPILE_LANGUAGE)
       ENABLE_LANGUAGE(${Kokkos_COMPILE_LANGUAGE})
+      IF(Kokkos_COMPILE_LANGUAGE STREQUAL CUDA)
+        SET(CMAKE_CUDA_ARCHITECTURES ${Kokkos_CUDA_ARCHITECTURES})
+      ENDIF()
+      IF(Kokkos_COMPILE_LANGUAGE STREQUAL HIP)
+        SET(CMAKE_HIP_ARCHITECTURES ${Kokkos_HIP_ARCHITECTURES})
+      ENDIF()
     ENDIF()
     IF(${Kokkos_VERSION} VERSION_GREATER_EQUAL "4.2.00")
       MESSAGE(STATUS "Found Kokkos version ${Kokkos_VERSION} at ${Kokkos_DIR}")
diff --git a/cmake/kokkoskernels_tribits.cmake b/cmake/kokkoskernels_tribits.cmake
index e47e20116..f7d11c9ef 100644
--- a/cmake/kokkoskernels_tribits.cmake
+++ b/cmake/kokkoskernels_tribits.cmake
@@ -156,6 +156,12 @@ IF (IS_ENABLED)
       SOURCES ${PARSE_SOURCES}
       TESTONLYLIBS ${PARSE_TESTONLYLIBS})
   ELSE()
+    # Set the correct CMake language on all source files for this exe
+    IF(Kokkos_COMPILE_LANGUAGE)
+      FOREACH(source ${PARSE_SOURCES})
+        SET_SOURCE_FILES_PROPERTIES(${source} PROPERTIES LANGUAGE ${Kokkos_COMPILE_LANGUAGE})
+      ENDFOREACH()
+    ENDIF()
     ADD_EXECUTABLE(${EXE_NAME} ${PARSE_SOURCES})
     #AJP, BMK altered:
     IF(KOKKOSKERNELS_ENABLE_TESTS_AND_PERFSUITE)

brian-kelley avatar Jul 30 '24 20:07 brian-kelley

Updated and rebased on current develop.

rbberger avatar Jul 31 '24 02:07 rbberger

@e10harvey do you know why the AT-2 is not letting things run? I thought we had fixed this with PR #2243 ?

lucbv avatar Jul 31 '24 04:07 lucbv

Status Flag 'Pre-Test Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED by label AT: PRE-TEST INSPECTED! Autotester is Removing Label; this inspection will remain valid until a new commit to source branch is performed.

kokkos-devops-admin avatar Jul 31 '24 04:07 kokkos-devops-admin

Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects:

Pull Request Auto Testing STARTING (click to expand)

Build Information

Test Name: KokkosKernels_PullRequest_CUDA11_CUDA11_LayoutRight

  • Build Num: 1438
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GCC930_Light_Tpls_GCC930_Tpls_CLANG13CUDA10

  • Build Num: 1026
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GNU1021

  • Build Num: 680
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GNU1021_Light_LayoutRight

  • Build Num: 667
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_GNU1021

  • Build Num: 668
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_INTEL19_solo

  • Build Num: 672
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_CLANG1001_solo

  • Build Num: 644
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_VEGA90A_ROCM561

  • Build Num: 1123
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_VEGA90A_Tpls_ROCM561

  • Build Num: 636
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Using Repos:

Repo: KOKKOSKERNELS (rbberger/kokkos-kernels)
  • Branch: cmake_language_support
  • SHA: 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
  • Mode: TEST_REPO

Pull Request Author: rbberger

kokkos-devops-admin avatar Jul 31 '24 05:07 kokkos-devops-admin

Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED

Pull Request Auto Testing has PASSED (click to expand)

Build Information

Test Name: KokkosKernels_PullRequest_CUDA11_CUDA11_LayoutRight

  • Build Num: 1438
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GCC930_Light_Tpls_GCC930_Tpls_CLANG13CUDA10

  • Build Num: 1026
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GNU1021

  • Build Num: 680
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GNU1021_Light_LayoutRight

  • Build Num: 667
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_GNU1021

  • Build Num: 668
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_INTEL19_solo

  • Build Num: 672
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_CLANG1001_solo

  • Build Num: 644
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_VEGA90A_ROCM561

  • Build Num: 1123
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_VEGA90A_Tpls_ROCM561

  • Build Num: 636
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_REPO https://github.com/rbberger/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA 6fc03a8f2d64f8716aae6ee891e4a03d95b97b09
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 99cbb4a2d3683abc9aa3c8affb818df51fdb863b
PR_LABELS enhancement;feature request
PULLREQUESTNUM 2173
TEST_REPO_ALIAS KOKKOSKERNELS

kokkos-devops-admin avatar Jul 31 '24 07:07 kokkos-devops-admin

Status Flag 'Pre-Merge Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED AND APPROVED by [ lucbv ]!

kokkos-devops-admin avatar Jul 31 '24 07:07 kokkos-devops-admin

Status Flag 'Pull Request AutoTester' - Pull Request MUST BE MERGED MANUALLY BY Project Team - This Repo does not support Automerge

kokkos-devops-admin avatar Jul 31 '24 07:07 kokkos-devops-admin

I tried testing this PR using the tips here , but I am running into compilation errors with kokkos-kernels:

/home/ndellin/Build_CudaAsCMakeLanguage/Build/install_kokkos/include/setup/Kokkos_Setup_Cuda.hpp:26:2: error: #error "KOKKOS_ENABLE_CUDA defined but the compiler is not defining the __CUDACC__ macro as expected"
 #error \

@rbberger @brian-kelley @lucbv I'm posting my configurations below, any guidance on what I should try differently?

For reference, this was for a Cuda build targeting Volta70 GPUs, and these are the modules I loaded:

# kokkos-dev-2
module load sems-gcc/8.3.0 sems-cuda/11.4.2 sems-cmake sems-openblas/0.3.12 sems-git

kokkos

export KOKKOS_BUILD=$BUILDDIR/Build_Kokkos
mkdir -p $KOKKOS_BUILD
export KOKKOS_INSTALL=$BUILDDIR/install_kokkos
mkdir -p $KOKKOS_INSTALL
cd $KOKKOS_BUILD

cmake \
  -D Kokkos_ENABLE_COMPILE_AS_CMAKE_LANGUAGE=ON \
  -D CMAKE_CUDA_ARCHITECTURES=70 \
  -D CMAKE_INSTALL_PREFIX=$KOKKOS_INSTALL \
  -D CMAKE_BUILD_TYPE:STRING=RELEASE \
  -D BUILD_SHARED_LIBS:BOOL=OFF \
\
  -D Kokkos_ENABLE_SERIAL=ON \
  -D Kokkos_ENABLE_CUDA=ON \
   -D Kokkos_ENABLE_TESTS=ON \
  -D Kokkos_ARCH_VOLTA70=ON \
$KOKKOS_DIR

make install -j12

kokkos-kernels

export KOKKOSKERNELS_BUILD=$BUILDDIR/Build_KokkosKernels
mkdir -p $KOKKOSKERNELS_BUILD
export KOKKOSKERNELS_INSTALL=$BUILDDIR/install_kokkos-kernels
mkdir -p $KOKKOSKERNELS_INSTALL
cd $KOKKOSKERNELS_BUILD

cmake \
  -D CMAKE_CUDA_ARCHITECTURES=70 \
  -D CMAKE_INSTALL_PREFIX=$KOKKOSKERNELS_INSTALL \
  -D CMAKE_BUILD_TYPE:STRING=RELEASE \
  -D BUILD_SHARED_LIBS:BOOL=OFF \
\
  -D CMAKE_PREFIX_PATH=$KOKKOS_INSTALL \
\
  -D KokkosKernels_INST_COMPLEX_DOUBLE=ON \
  -D KokkosKernels_INST_OFFSET_INT=OFF \
  -D KokkosKernels_INST_OFFSET_SIZE_T=ON \
  -D KokkosKernels_ENABLE_TESTS=ON \
$KOKKOSKERNELS_DIR

make -j12

ndellingwood avatar Jul 31 '24 18:07 ndellingwood

Whoops, I didn't switch my branch to this PR, was testing with develop. Rebuilding now, sorry for the noise...

ndellingwood avatar Jul 31 '24 18:07 ndellingwood

cuda/11.4.2 build on Volta70 worked fine for me with these changes - compilation successful, unit tests passed 100%

ndellingwood avatar Jul 31 '24 19:07 ndellingwood

Status Flag 'Pull Request AutoTester' - Pull Request MUST BE MERGED MANUALLY BY Project Team - This Repo does not support Automerge

kokkos-devops-admin avatar Aug 01 '24 07:08 kokkos-devops-admin