From 6cb4a00280849c22191ac0d506eeac93db3052a5 Mon Sep 17 00:00:00 2001 From: Satish Balay Date: Thu, 27 Oct 2022 10:02:36 -0500 Subject: [PATCH] petsc+kokkos: pass in cuda_arch, rocm_arch to kokkos (#33530) Also remove dependency on kokkos+wrapper --- .../repos/builtin/packages/petsc/package.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/var/spack/repos/builtin/packages/petsc/package.py b/var/spack/repos/builtin/packages/petsc/package.py index 71ba0cba756..830adff3b59 100644 --- a/var/spack/repos/builtin/packages/petsc/package.py +++ b/var/spack/repos/builtin/packages/petsc/package.py @@ -333,9 +333,20 @@ def check_fortran_compiler(self): depends_on("hwloc", when="+hwloc") depends_on("kokkos", when="+kokkos") depends_on("kokkos-kernels", when="+kokkos") - depends_on("kokkos+cuda+wrapper+cuda_lambda", when="+kokkos +cuda") - depends_on("kokkos-kernels+cuda", when="+kokkos +cuda") - depends_on("kokkos+rocm", when="+kokkos +rocm") + for cuda_arch in CudaPackage.cuda_arch_values: + depends_on( + "kokkos+cuda+cuda_lambda cuda_arch=%s" % cuda_arch, + when="+kokkos +cuda cuda_arch=%s" % cuda_arch, + ) + depends_on( + "kokkos-kernels+cuda cuda_arch=%s" % cuda_arch, + when="+kokkos +cuda cuda_arch=%s" % cuda_arch, + ) + for rocm_arch in ROCmPackage.amdgpu_targets: + depends_on( + "kokkos+rocm amdgpu_target=%s" % rocm_arch, + when="+kokkos +rocm amdgpu_target=%s" % rocm_arch, + ) phases = ["configure", "build", "install"]