From b7aea9f3b1a652e95a16b17fe526ec15731af40b Mon Sep 17 00:00:00 2001 From: Brian Van Essen Date: Mon, 14 Dec 2020 01:14:49 -0800 Subject: Propagate cuda_arch downstream from LBANN, Hydrogen and DiHydrogen (#20345) --- var/spack/repos/builtin/packages/dihydrogen/package.py | 3 +++ var/spack/repos/builtin/packages/hydrogen/package.py | 5 +++-- var/spack/repos/builtin/packages/lbann/package.py | 6 ++++++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/var/spack/repos/builtin/packages/dihydrogen/package.py b/var/spack/repos/builtin/packages/dihydrogen/package.py index 03a3f8f671..b5d92755f6 100644 --- a/var/spack/repos/builtin/packages/dihydrogen/package.py +++ b/var/spack/repos/builtin/packages/dihydrogen/package.py @@ -75,6 +75,9 @@ class Dihydrogen(CMakePackage, CudaPackage): # Add Aluminum variants depends_on('aluminum +cuda +nccl +ht +cuda_rma', when='+al +cuda') + for arch in CudaPackage.cuda_arch_values: + depends_on('aluminum cuda_arch=%s' % arch, when='+al +cuda cuda_arch=%s' % arch) + depends_on('cuda', when=('+cuda' or '+legacy')) depends_on('cudnn', when=('+cuda' or '+legacy')) depends_on('cub', when='^cuda@:10.99') diff --git a/var/spack/repos/builtin/packages/hydrogen/package.py b/var/spack/repos/builtin/packages/hydrogen/package.py index da571027e9..f7333de8a7 100644 --- a/var/spack/repos/builtin/packages/hydrogen/package.py +++ b/var/spack/repos/builtin/packages/hydrogen/package.py @@ -53,8 +53,6 @@ class Hydrogen(CMakePackage, CudaPackage): variant('mpfr', default=False, description='Support GNU MPFR\'s' 'arbitrary-precision floating-point arithmetic') - variant('cuda', default=False, - description='Builds with support for GPUs via CUDA and cuDNN') variant('test', default=False, description='Builds test suite') variant('al', default=False, @@ -96,6 +94,9 @@ class Hydrogen(CMakePackage, CudaPackage): # Add Aluminum variants depends_on('aluminum +cuda +nccl +ht +cuda_rma', when='+al +cuda') + for arch in CudaPackage.cuda_arch_values: + depends_on('aluminum cuda_arch=%s' % arch, when='+al +cuda cuda_arch=%s' % arch) + # Note that this forces us to use OpenBLAS until #1712 is fixed depends_on('lapack', when='blas=openblas ~openmp_blas') diff --git a/var/spack/repos/builtin/packages/lbann/package.py b/var/spack/repos/builtin/packages/lbann/package.py index 11c4ed2f1a..4c0c3ef12b 100644 --- a/var/spack/repos/builtin/packages/lbann/package.py +++ b/var/spack/repos/builtin/packages/lbann/package.py @@ -101,6 +101,12 @@ class Lbann(CMakePackage, CudaPackage): depends_on('dihydrogen@:0.0,0.2:', when='@:0.90,0.102: +dihydrogen') conflicts('~dihydrogen', when='+distconv') + for arch in CudaPackage.cuda_arch_values: + depends_on('hydrogen cuda_arch=%s' % arch, when='cuda_arch=%s' % arch) + depends_on('aluminum cuda_arch=%s' % arch, when='+al +cuda cuda_arch=%s' % arch) + depends_on('dihydrogen cuda_arch=%s' % arch, when='+dihydrogen cuda_arch=%s' % arch) + depends_on('nccl cuda_arch=%s' % arch, when='+cuda cuda_arch=%s' % arch) + depends_on('cudnn', when='@0.90:0.100.99 +cuda') depends_on('cudnn@8.0.2:', when='@:0.90,0.101: +cuda') depends_on('cub', when='@0.94:0.98.2 +cuda ^cuda@:10.99') -- cgit v1.2.3-60-g2f50