summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorDenis Davydov <davydden@gmail.com>2018-05-11 15:50:35 +0200
committerAdam J. Stewart <ajstewart426@gmail.com>2018-05-11 08:50:35 -0500
commit28bebe13a8e0fcce716c6adb6789f43e99f4665d (patch)
tree7c70fa0d7947142f5a3c12b96d8984c3b9fa4af3 /var
parent206e61bafdde19b6ec28583386e08917aefb91b0 (diff)
downloadspack-28bebe13a8e0fcce716c6adb6789f43e99f4665d.tar.gz
spack-28bebe13a8e0fcce716c6adb6789f43e99f4665d.tar.bz2
spack-28bebe13a8e0fcce716c6adb6789f43e99f4665d.tar.xz
spack-28bebe13a8e0fcce716c6adb6789f43e99f4665d.zip
dealii: disable tpetra when +cuda; check for '' in cuda_arch (#7958)
* dealii: disable tpetra when +cuda; check for '' in cuda_arch * trilinos: fix Kokkos CUDA * Revert "trilinos: fix Kokkos CUDA" This reverts commit 6aae894bc7d49c9e736c06f65b81b8c219443920. * update according to @aprokop comments * minor * fix flake8
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/dealii/package.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/var/spack/repos/builtin/packages/dealii/package.py b/var/spack/repos/builtin/packages/dealii/package.py
index f6b8ba449e..3bb377aab3 100644
--- a/var/spack/repos/builtin/packages/dealii/package.py
+++ b/var/spack/repos/builtin/packages/dealii/package.py
@@ -146,8 +146,12 @@ class Dealii(CMakePackage, CudaPackage):
depends_on('slepc@:3.6.3', when='@:8.4.1+slepc+petsc+mpi')
depends_on('slepc~arpack', when='+slepc+petsc+mpi+int64')
depends_on('sundials~pthread', when='@9.0:+sundials')
- depends_on('trilinos+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos', when='+trilinos+mpi~int64')
- depends_on('trilinos+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos~hypre', when='+trilinos+mpi+int64')
+ depends_on('trilinos+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos', when='+trilinos+mpi~int64~cuda')
+ depends_on('trilinos+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos~hypre', when='+trilinos+mpi+int64~cuda')
+ # FIXME: temporary disable Tpetra when using CUDA due to
+ # namespace "Kokkos::Impl" has no member "cuda_abort"
+ depends_on('trilinos@master+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos~amesos2~ifpack2~intrepid2~kokkos~tpetra~zoltan2', when='+trilinos+mpi~int64+cuda')
+ depends_on('trilinos@master+amesos+aztec+epetra+ifpack+ml+muelu+rol+sacado+teuchos~hypre~amesos2~ifpack2~intrepid2~kokkos~tpetra~zoltan2', when='+trilinos+mpi+int64+cuda')
# check that the combination of variants makes sense
conflicts('^openblas+ilp64', when='@:8.5.1')
@@ -252,15 +256,15 @@ class Dealii(CMakePackage, CudaPackage):
if not spec.satisfies('^cuda@9:'):
options.append('-DDEAL_II_WITH_CXX14=OFF')
cuda_arch = spec.variants['cuda_arch'].value
- if cuda_arch is not None:
+ if cuda_arch is not None and cuda_arch[0] is not '':
if len(cuda_arch) > 1:
raise InstallError(
'deal.II only supports compilation for a single GPU!'
)
flags = '-arch=sm_{0}'.format(cuda_arch[0])
# FIXME: there are some compiler errors in dealii
- # with flags below. Stick with -arch=sm_xy for now.
- # flags = ' '.join(self.cuda_flags(cuda_arch))
+ # with: flags = ' '.join(self.cuda_flags(cuda_arch))
+ # Stick with -arch=sm_xy for now.
options.append(
'-DDEAL_II_CUDA_FLAGS={0}'.format(flags)
)