Merge branch 'easyconfigs-it4i-anselm'

This commit is contained in:
Lukáš Krupčík 2017-06-22 10:01:12 +02:00
commit a555596bc8

View File

@ -0,0 +1,61 @@
easyblock = 'MakeCp'
name = 'VASP'
version = '5.4.4'
versionsuffix = 'CUDA-8.0.44-mkl=sequential'
homepage = 'http://www.vasp.at'
description = """The Vienna Ab initio Simulation Package (VASP) is a computer program for atomic scale
materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics,
from first principles."""
toolchain = {'name': 'intel', 'version': '2016a'}
toolchainopts = {'pic': True, 'usempi': True}
# Vasp is proprietary software, see http://www.vasp.at/index.php/faqs on how to get access to the code
sources = ['%(namelower)s.%(version)s.tar.gz']
checksums = ['8ac646b108f974371eef398973373bf6']
dependencies = [
('zlib', '1.2.11', '', True),
('CUDA', '8.0.44', '', True),
]
prebuildopts = 'cp arch/makefile.include.linux_intel ./makefile.include && '
# path to libfftw3xf_intel.a is hardcoded in makefile.include
prebuildopts += 'sed -i "s|\$(MKLROOT)/interfaces/fftw3xf|\$(FFTW_LIB_DIR)|" makefile.include && '
#prebuildopts += 'sed -i "s|OBJECTS = fftmpiw.o fftmpi_map.o fft3dlib.o fftw3d.o|OBJECTS = fftmpiw.o fftmpi_map.o fft3dlib.o fftw3d.o \$(MKLROOT)/lib/intel64_lin/libfftw3xf_intel.a|" makefile.include && '
# remove mkl flag to prevent mixing dynamic libs with the static libs in LIBBLACS/SCALAPACK
prebuildopts += 'sed -i "s|-mkl=sequential ||" makefile.include && '
prebuildopts += 'sed -i "s|BLAS =|BLAS = -mkl=sequential|" makefile.include && '
# FLAG
prebuildopts += 'sed -i "s|OFLAG = -O2|OFLAG = -O2 -ip -xHost|" makefile.include && '
prebuildopts += 'sed -i "s|FFLAGS = -assume byterecl -w|FFLAGS = -FR -assume byterecl|" makefile.include && '
# CUDA
prebuildopts += 'sed -i "s|CUDA_ROOT ?= /usr/local/cuda/|CUDA_ROOT ?= $EBROOTCUDA|" makefile.include && '
# VASP uses LIBS as a list of folders
prebuildopts += 'unset LIBS && '
#prebuildopts += 'exit 1'
#buildopts = 'all BLACS="$LIBBLACS" SCALAPACK="$LIBSCALAPACK" '
buildopts = 'std gam ncl gpu gpu_ncl'
parallel = 1
files_to_copy = [(['bin/vasp_std', 'bin/vasp_gam', 'bin/vasp_ncl'], 'bin')]
sanity_check_paths = {
'files': ['bin/vasp_std', 'bin/vasp_gam', 'bin/vasp_ncl'],
'dirs': []
}
modluafooter = 'add_property("state","testing")'
moduleclass = 'phys'