From c2b116175b1450fee5c557bd11a51f1904b3b13b Mon Sep 17 00:00:00 2001 From: Richard Berger Date: Mon, 19 Feb 2024 05:52:48 -0700 Subject: kokkos: disable CUDA_MALLOC_ASYNC on cray-mpich (#42661) Co-authored-by: Daniel Arndt --- var/spack/repos/builtin/packages/kokkos/package.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/var/spack/repos/builtin/packages/kokkos/package.py b/var/spack/repos/builtin/packages/kokkos/package.py index 7386a09044..0f994087d2 100644 --- a/var/spack/repos/builtin/packages/kokkos/package.py +++ b/var/spack/repos/builtin/packages/kokkos/package.py @@ -356,6 +356,17 @@ class Kokkos(CMakePackage, CudaPackage, ROCmPackage): if self.spec.satisfies("%oneapi") or self.spec.satisfies("%intel"): options.append(self.define("CMAKE_CXX_FLAGS", "-fp-model=precise")) + # Kokkos 4.2.00+ changed the default to Kokkos_ENABLE_IMPL_CUDA_MALLOC_ASYNC=on + # which breaks GPU-aware with Cray-MPICH + # See https://github.com/kokkos/kokkos/pull/6402 + # TODO: disable this once Cray-MPICH is fixed + if ( + self.spec.satisfies("@4.2.00:") + and "mpi" in self.spec + and self.spec["mpi"].name == "cray-mpich" + ): + options.append(self.define("Kokkos_ENABLE_IMPL_CUDA_MALLOC_ASYNC", False)) + # Remove duplicate options return lang.dedupe(options) -- cgit v1.2.3-70-g09d2