summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTodd Gamblin <tgamblin@llnl.gov>2016-04-26 12:48:57 -0700
committerTodd Gamblin <tgamblin@llnl.gov>2016-04-26 12:48:57 -0700
commitd1a93287935caa01181e2622d84b73bbe04e800d (patch)
treec4f5c46f814cdf1572fcffe28fec4e06f85ecb91
parent1d2916da8c8af06a035258ee01689e1ef4dd7f54 (diff)
parenta7ffffc336beff3ba2ef98a82ec16c35d65c7982 (diff)
downloadspack-d1a93287935caa01181e2622d84b73bbe04e800d.tar.gz
spack-d1a93287935caa01181e2622d84b73bbe04e800d.tar.bz2
spack-d1a93287935caa01181e2622d84b73bbe04e800d.tar.xz
spack-d1a93287935caa01181e2622d84b73bbe04e800d.zip
Merge pull request #824 from adamjstewart/features/ior
Add IOR benchmark package
-rw-r--r--var/spack/repos/builtin/packages/ior/package.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/ior/package.py b/var/spack/repos/builtin/packages/ior/package.py
new file mode 100644
index 0000000000..c46650a674
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ior/package.py
@@ -0,0 +1,42 @@
+from spack import *
+import os
+
+class Ior(Package):
+ """The IOR software is used for benchmarking parallel file systems
+ using POSIX, MPI-IO, or HDF5 interfaces."""
+
+ homepage = "https://github.com/LLNL/ior"
+ url = "https://github.com/LLNL/ior/archive/3.0.1.tar.gz"
+
+ version('3.0.1', '71150025e0bb6ea1761150f48b553065')
+
+ variant('hdf5', default=False, description='support IO with HDF5 backend')
+ variant('ncmpi', default=False, description='support IO with NCMPI backend')
+
+ depends_on('mpi')
+ depends_on('hdf5+mpi', when='+hdf5')
+ depends_on('netcdf+mpi', when='+ncmpi')
+
+
+ def install(self, spec, prefix):
+ os.system('./bootstrap')
+
+ config_args = [
+ 'MPICC=%s' % spec['mpi'].prefix.bin + '/mpicc',
+ '--prefix=%s' % prefix,
+ ]
+
+ if '+hdf5' in spec:
+ config_args.append('--with-hdf5')
+ else:
+ config_args.append('--without-hdf5')
+
+ if '+ncmpi' in spec:
+ config_args.append('--with-ncmpi')
+ else:
+ config_args.append('--without-ncmpi')
+
+ configure(*config_args)
+
+ make()
+ make('install')