diff options
author | 健美猫 <weijianwen@gmail.com> | 2017-07-24 01:18:05 +0800 |
---|---|---|
committer | Adam J. Stewart <ajstewart426@gmail.com> | 2017-07-23 12:18:05 -0500 |
commit | 8a06e3d867528cd9209bde336297a52b4fceeaa3 (patch) | |
tree | ef9236ea812e1e051c367c16e783785bbb8857a9 /var | |
parent | 1cdb3c61cae9d35fd9866e951c92235e6269a80f (diff) | |
download | spack-8a06e3d867528cd9209bde336297a52b4fceeaa3.tar.gz spack-8a06e3d867528cd9209bde336297a52b4fceeaa3.tar.bz2 spack-8a06e3d867528cd9209bde336297a52b4fceeaa3.tar.xz spack-8a06e3d867528cd9209bde336297a52b4fceeaa3.zip |
Add cuda variant for mvapich2. (#4800)
* Add cuda variant for mvapich2.
* Disable cuda for mvapich2 by default.
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/repos/builtin/packages/mvapich2/package.py | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/mvapich2/package.py b/var/spack/repos/builtin/packages/mvapich2/package.py index b20bf76e93..675731146e 100644 --- a/var/spack/repos/builtin/packages/mvapich2/package.py +++ b/var/spack/repos/builtin/packages/mvapich2/package.py @@ -59,6 +59,9 @@ class Mvapich2(AutotoolsPackage): variant('debug', default=False, description='Enable debug info and error messages at run-time') + variant('cuda', default=False, + description='Enable CUDA extension') + # Accepted values are: # single - No threads (MPI_THREAD_SINGLE) # funneled - Only the main thread calls MPI (MPI_THREAD_FUNNELED) @@ -100,9 +103,9 @@ class Mvapich2(AutotoolsPackage): ) ) - # FIXME : CUDA support is missing - depends_on('bison') + depends_on('bison', type='build') depends_on('libpciaccess', when=(sys.platform != 'darwin')) + depends_on('cuda', when='+cuda') def url_for_version(self, version): base_url = "http://mvapich.cse.ohio-state.edu/download" @@ -217,6 +220,14 @@ class Mvapich2(AutotoolsPackage): else: args.append('--enable-fast=all') + if '+cuda' in self.spec: + args.extend([ + '--enable-cuda', + '--with-cuda={0}'.format(spec['cuda'].prefix) + ]) + else: + args.append('--disable-cuda') + args.extend(self.process_manager_options) args.extend(self.network_options) return args |