mirror of
https://code.it4i.cz/sccs/easyconfigs-it4i.git
synced 2025-04-07 15:32:11 +01:00
merge master
This commit is contained in:
commit
868052c35e
69
a/ABINIT/ABINIT-9.4.1-intel-2020b.eb
Normal file
69
a/ABINIT/ABINIT-9.4.1-intel-2020b.eb
Normal file
@ -0,0 +1,69 @@
|
||||
# IT4Innovations
|
||||
# LK 2021
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'ABINIT'
|
||||
version = '9.4.1'
|
||||
|
||||
homepage = 'https://www.abinit.org/'
|
||||
description = """ABINIT is a package whose main program allows one to find the total energy,
|
||||
charge density and electronic structure of systems made of electrons and nuclei (molecules
|
||||
and periodic solids) within Density Functional Theory (DFT), using pseudopotentials and a
|
||||
planewave or wavelet basis."""
|
||||
|
||||
# AMD/intel cpu
|
||||
toolchain = {'name': 'intel', 'version': '2020b'}
|
||||
import os
|
||||
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
toolchainopts = {'usempi': True, 'optarch': 'march=core-avx2', 'pic': True}
|
||||
else:
|
||||
toolchainopts = {'usempi': True, 'pic': True}
|
||||
|
||||
source_urls = ['https://www.abinit.org/sites/default/files/packages/']
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
checksums = ['ec74133ef9d247cb6ad44c205675694919cf36d7f1682a9b85cae8bdecdc22a8']
|
||||
|
||||
builddependencies = [
|
||||
('Python', '3.8.6'),
|
||||
]
|
||||
dependencies = [
|
||||
('libxc', '4.3.4'),
|
||||
('netCDF', '4.7.4'),
|
||||
('netCDF-Fortran', '4.5.3'),
|
||||
('HDF5', '1.10.7'),
|
||||
('Wannier90', '3.1.0'),
|
||||
]
|
||||
|
||||
# Ensure MPI with intel wrappers.
|
||||
configopts = '--with-mpi="yes" --enable-openmp="no" '
|
||||
configopts += ' FC="mpiifort" CC="mpiicc" CXX="mpiicpc" '
|
||||
|
||||
# BLAS/Lapack from MKL
|
||||
configopts += '--with-linalg-flavor=mkl '
|
||||
|
||||
# FFTW from MKL
|
||||
configopts += '--with-fft-flavor=dfti '
|
||||
|
||||
# libxc support
|
||||
configopts += '--with-libxc=${EBROOTLIBXC} '
|
||||
|
||||
# hdf5/netcdf4 support
|
||||
configopts += '--with-netcdf="${EBROOTNETCDF}" '
|
||||
configopts += '--with-netcdf-fortran="${EBROOTNETCDFMINFORTRAN}" '
|
||||
configopts += '--with-hdf5="${EBROOTHDF5}" '
|
||||
|
||||
# Wannier90
|
||||
configopts += '--with-wannier90="${EBROOTWANNIER90}" '
|
||||
preconfigopts = 'export WANNIER90_LIBS="-L$EBROOTWANNIER90/lib -lwannier" && '
|
||||
|
||||
# 'make check' is just executing some basic unit tests.
|
||||
# Also running 'make tests_v1' to have some basic validation
|
||||
runtest = "check && make test_v1"
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/%s' % x for x in ['abinit', 'aim', 'cut3d', 'conducti', 'mrgddb', 'mrgscr', 'optic']],
|
||||
'dirs': ['lib/pkgconfig'],
|
||||
}
|
||||
|
||||
moduleclass = 'chem'
|
@ -12,8 +12,14 @@ description = """ABINIT is a package whose main program allows one to find the t
|
||||
and periodic solids) within Density Functional Theory (DFT), using pseudopotentials and a
|
||||
planewave or wavelet basis."""
|
||||
|
||||
# AMD/intel cpu
|
||||
toolchain = {'name': 'intel', 'version': '2020b'}
|
||||
toolchainopts = {'usempi': True, 'pic': True}
|
||||
import os
|
||||
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
toolchainopts = {'usempi': True, 'optarch': 'march=core-avx2', 'pic': True}
|
||||
else:
|
||||
toolchainopts = {'usempi': True, 'pic': True}
|
||||
|
||||
|
||||
source_urls = ['https://www.abinit.org/sites/default/files/packages/']
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
@ -26,7 +32,7 @@ dependencies = [
|
||||
('libxc', '4.3.4'),
|
||||
('netCDF', '4.7.4'),
|
||||
('netCDF-Fortran', '4.5.3'),
|
||||
('HDF5', '1.10.7'),
|
||||
('HDF5', '1.10.6', '-parallel'),
|
||||
('Wannier90', '3.1.0'),
|
||||
]
|
||||
|
||||
|
78
a/ABINIT/ABINIT-9.4.2-intel-2021a.eb
Normal file
78
a/ABINIT/ABINIT-9.4.2-intel-2021a.eb
Normal file
@ -0,0 +1,78 @@
|
||||
|
||||
# IT4Innovations
|
||||
# LK 2021
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'ABINIT'
|
||||
version = '9.4.2'
|
||||
|
||||
homepage = 'https://www.abinit.org/'
|
||||
description = """
|
||||
ABINIT is a package whose main program allows one to find the total energy, charge density and electronic structure of
|
||||
systems made of electrons and nuclei (molecules and periodic solids) within Density Functional Theory (DFT), using
|
||||
pseudopotentials and a planewave or wavelet basis.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'intel', 'version': '2021a'}
|
||||
|
||||
# AMD/intel cpu
|
||||
import os
|
||||
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
toolchainopts = {'usempi': True, 'optarch': 'march=core-avx2', 'pic': True}
|
||||
else:
|
||||
toolchainopts = {'usempi': True, 'pic': True}
|
||||
|
||||
source_urls = ['https://www.abinit.org/sites/default/files/packages/']
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
checksums = ['d40886f5c8b138bb4aa1ca05da23388eb70a682790cfe5020ecce4db1b1a76bc']
|
||||
|
||||
builddependencies = [
|
||||
('Python', '3.9.5'),
|
||||
]
|
||||
dependencies = [
|
||||
('libxc', '5.1.5'),
|
||||
('netCDF', '4.8.0'),
|
||||
('netCDF-Fortran', '4.5.3'),
|
||||
('HDF5', '1.10.7'),
|
||||
('Wannier90', '3.1.0'),
|
||||
]
|
||||
|
||||
# Ensure MPI with intel wrappers.
|
||||
configopts = '--with-mpi="yes" --enable-mpi-io --enable-mpi-inplace'
|
||||
configopts += ' FC="mpiifort" CC="mpiicc" CXX="mpiicpc" '
|
||||
|
||||
# Disable OpenMP
|
||||
configopts += '--enable-openmp="no" '
|
||||
|
||||
# BLAS/Lapack from MKL
|
||||
configopts += '--with-linalg-flavor=mkl --with-optim-flavor="aggressive" '
|
||||
|
||||
# FFTW from MKL
|
||||
configopts += '--with-fft-flavor=dfti '
|
||||
|
||||
# libxc support
|
||||
configopts += '--with-libxc=${EBROOTLIBXC} '
|
||||
|
||||
# hdf5/netcdf4 support
|
||||
configopts += '--with-netcdf="${EBROOTNETCDF}" '
|
||||
configopts += '--with-netcdf-fortran="${EBROOTNETCDFMINFORTRAN}" '
|
||||
configopts += '--with-hdf5="${EBROOTHDF5}" '
|
||||
|
||||
# Wannier90
|
||||
configopts += '--with-wannier90="${EBROOTWANNIER90}" '
|
||||
preconfigopts = 'export WANNIER90_LIBS="-L$EBROOTWANNIER90/lib -lwannier" && '
|
||||
|
||||
# Enable double precision for GW calculations
|
||||
configopts += '--enable-gw-dpc '
|
||||
|
||||
# 'make check' is just executing some basic unit tests.
|
||||
# Also running 'make tests_v1' to have some basic validation
|
||||
runtest = "check && make test_v1"
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/%s' % x for x in ['abinit', 'aim', 'cut3d', 'conducti', 'mrgddb', 'mrgscr', 'optic']],
|
||||
'dirs': ['lib/pkgconfig'],
|
||||
}
|
||||
|
||||
moduleclass = 'chem'
|
22
a/ANSYS/ANSYS-20.2-intel-2017c.eb
Normal file
22
a/ANSYS/ANSYS-20.2-intel-2017c.eb
Normal file
@ -0,0 +1,22 @@
|
||||
# IT4Innovations
|
||||
# LK 2021
|
||||
|
||||
name = 'ANSYS'
|
||||
version = '20.2'
|
||||
|
||||
homepage = 'http://www.ansys.com'
|
||||
description = """ANSYS simulation software enables organizations to confidently predict
|
||||
how their products will operate in the real world. We believe that every product is
|
||||
a promise of something greater. """
|
||||
|
||||
toolchain = {'name': 'intel', 'version': '2017c'}
|
||||
|
||||
# create a zip file from the 3 install iso files.
|
||||
# make sure all files of the iso's are in the same directory.
|
||||
sources = ['ansys-20.2.tar.gz']
|
||||
|
||||
import os
|
||||
license_server = os.getenv('EB_ANSYS_LICENSE_SERVER', 'license.it4i.cz')
|
||||
license_server_port = os.getenv('EB_ANSYS_LICENSE_SERVER_PORT', '2325:1055')
|
||||
|
||||
moduleclass = 'tools'
|
26
a/ANSYS/ANSYS-21.2-intel-2020b.eb
Normal file
26
a/ANSYS/ANSYS-21.2-intel-2020b.eb
Normal file
@ -0,0 +1,26 @@
|
||||
# IT4Innovations
|
||||
# LK 2021
|
||||
|
||||
name = 'ANSYS'
|
||||
version = '21.2'
|
||||
|
||||
homepage = 'http://www.ansys.com'
|
||||
description = """ANSYS simulation software enables organizations to confidently predict
|
||||
how their products will operate in the real world. We believe that every product is
|
||||
a promise of something greater. """
|
||||
|
||||
toolchain = {'name': 'intel', 'version': '2020b'}
|
||||
|
||||
# create a zip file from the 3 install iso files.
|
||||
# make sure all files of the iso's are in the same directory.
|
||||
sources = ['ansys-%(version)s.tar.gz']
|
||||
|
||||
dependencies = [
|
||||
('libGLU', '9.0.1'),
|
||||
]
|
||||
|
||||
import os
|
||||
license_server = os.getenv('EB_ANSYS_LICENSE_SERVER', '10.5.8.13')
|
||||
license_server_port = os.getenv('EB_ANSYS_LICENSE_SERVER_PORT', '2325:1055')
|
||||
|
||||
moduleclass = 'tools'
|
58
g/GDRCopy/GDRCopy-2.1-NVHPC-21.9-CUDA-11.4.1.eb
Normal file
58
g/GDRCopy/GDRCopy-2.1-NVHPC-21.9-CUDA-11.4.1.eb
Normal file
@ -0,0 +1,58 @@
|
||||
# IT4Innovations 2021
|
||||
# LK
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'GDRCopy'
|
||||
version = '2.1'
|
||||
versionsuffix = '-CUDA-11.4.1'
|
||||
|
||||
homepage = 'https://github.com/NVIDIA/gdrcopy'
|
||||
description = "A low-latency GPU memory copy library based on NVIDIA GPUDirect RDMA technology."
|
||||
|
||||
toolchain = {'name': 'NVHPC', 'version': '21.9'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
github_account = 'NVIDIA'
|
||||
source_urls = [GITHUB_SOURCE]
|
||||
sources = ['v%(version)s.tar.gz']
|
||||
|
||||
builddependencies = [
|
||||
('Autotools', '20200321'),
|
||||
('pkg-config', '0.29.2'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('Check', '0.15.2'),
|
||||
('CUDAcore', '11.4.1', '', True),
|
||||
]
|
||||
|
||||
# This easyconfig only installs the library and binaries of GDRCopy. Please
|
||||
# keep in mind that GDRCopy also needs the following kernel modules at runtime:
|
||||
#
|
||||
# 1. Kernel module for GDRCopy: improves Host to GPU communication
|
||||
# https://github.com/NVIDIA/gdrcopy
|
||||
# RPM: 'gdrcopy-kmod', DEB: 'gdrdrv-dkms'
|
||||
# Requirements: version of GDRCopy kernel module (gdrdrv.ko) >= 2.0
|
||||
#
|
||||
# 2. (optional) Kernel module for GPUDirect RDMA: improves GPU to GPU communication
|
||||
# https://github.com/Mellanox/nv_peer_memory
|
||||
# RPM: 'nvidia_peer_memory'
|
||||
# Requirements: Mellanox HCA with MLNX_OFED 2.1
|
||||
#
|
||||
# These kernel modules are not listed as system dependencies to lower the system
|
||||
# requirements to build this easyconfig, as they are not needed for the build.
|
||||
|
||||
skipsteps = ['configure']
|
||||
|
||||
local_envopts = "PREFIX=%(installdir)s CUDA=$EBROOTCUDACORE"
|
||||
prebuildopts = "PATH=$PATH:/sbin " # ensures that ldconfig is found
|
||||
buildopts = "config lib exes %s" % local_envopts
|
||||
installopts = local_envopts
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/copybw', 'bin/copylat', 'bin/sanity', 'lib/libgdrapi.%s' % SHLIB_EXT],
|
||||
'dirs': ['include'],
|
||||
}
|
||||
|
||||
moduleclass = 'lib'
|
55
g/GDRCopy/GDRCopy-2.3-GCCcore-10.2.0.eb
Normal file
55
g/GDRCopy/GDRCopy-2.3-GCCcore-10.2.0.eb
Normal file
@ -0,0 +1,55 @@
|
||||
# IT4Innovations
|
||||
# LK 2021
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'GDRCopy'
|
||||
version = '2.3'
|
||||
|
||||
homepage = 'https://github.com/NVIDIA/gdrcopy'
|
||||
description = "A low-latency GPU memory copy library based on NVIDIA GPUDirect RDMA technology."
|
||||
|
||||
toolchain = {'name': 'GCCcore', 'version': '10.2.0'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
github_account = 'NVIDIA'
|
||||
source_urls = [GITHUB_SOURCE]
|
||||
sources = ['v%(version)s.tar.gz']
|
||||
checksums = ['b85d15901889aa42de6c4a9233792af40dd94543e82abe0439e544c87fd79475']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.35'),
|
||||
('Autotools', '20200321'),
|
||||
('pkg-config', '0.29.2'),
|
||||
]
|
||||
|
||||
# This easyconfig only installs the library of GDRCopy. Please keep in mind
|
||||
# that GDRCopy also needs the following kernel modules at runtime:
|
||||
#
|
||||
# 1. Kernel module for GDRCopy: improves Host to GPU communication
|
||||
# https://github.com/NVIDIA/gdrcopy
|
||||
# RPM: 'gdrcopy-kmod', DEB: 'gdrdrv-dkms'
|
||||
# Requirements: version of GDRCopy kernel module (gdrdrv.ko) >= 2.0
|
||||
#
|
||||
# 2. (optional) Kernel module for GPUDirect RDMA: improves GPU to GPU communication
|
||||
# https://github.com/Mellanox/nv_peer_memory
|
||||
# RPM: 'nvidia_peer_memory'
|
||||
# Requirements: Mellanox HCA with MLNX_OFED 2.1
|
||||
#
|
||||
# These kernel modules are not listed as system dependencies to lower the system
|
||||
# requirements to build this easyconfig, as they are not needed for the build.
|
||||
|
||||
skipsteps = ['configure']
|
||||
|
||||
local_envopts = "prefix=%(installdir)s"
|
||||
prebuildopts = "PATH=$PATH:/sbin " # ensures that ldconfig is found
|
||||
buildopts = "config lib %s" % local_envopts
|
||||
install_cmd = "make lib_install"
|
||||
installopts = local_envopts
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['lib/libgdrapi.%s' % SHLIB_EXT],
|
||||
'dirs': ['include'],
|
||||
}
|
||||
|
||||
moduleclass = 'lib'
|
60
g/GDRCopy/GDRCopy-2.3-NVHPC-21.9-CUDA-11.4.1.eb
Normal file
60
g/GDRCopy/GDRCopy-2.3-NVHPC-21.9-CUDA-11.4.1.eb
Normal file
@ -0,0 +1,60 @@
|
||||
# IT4Innovations
|
||||
# LK 2021
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'GDRCopy'
|
||||
version = '2.3'
|
||||
versionsuffix = '-CUDA-11.4.1'
|
||||
|
||||
homepage = 'https://github.com/NVIDIA/gdrcopy'
|
||||
description = "A low-latency GPU memory copy library based on NVIDIA GPUDirect RDMA technology."
|
||||
|
||||
toolchain = {'name': 'NVHPC', 'version': '21.9'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
github_account = 'NVIDIA'
|
||||
source_urls = [GITHUB_SOURCE]
|
||||
sources = ['v%(version)s.tar.gz']
|
||||
checksums = ['b85d15901889aa42de6c4a9233792af40dd94543e82abe0439e544c87fd79475']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.35'),
|
||||
('Autotools', '20200321'),
|
||||
('pkg-config', '0.29.2'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('CUDAcore', '11.4.1', '', True),
|
||||
]
|
||||
|
||||
# This easyconfig only installs the library of GDRCopy. Please keep in mind
|
||||
# that GDRCopy also needs the following kernel modules at runtime:
|
||||
#
|
||||
# 1. Kernel module for GDRCopy: improves Host to GPU communication
|
||||
# https://github.com/NVIDIA/gdrcopy
|
||||
# RPM: 'gdrcopy-kmod', DEB: 'gdrdrv-dkms'
|
||||
# Requirements: version of GDRCopy kernel module (gdrdrv.ko) >= 2.0
|
||||
#
|
||||
# 2. (optional) Kernel module for GPUDirect RDMA: improves GPU to GPU communication
|
||||
# https://github.com/Mellanox/nv_peer_memory
|
||||
# RPM: 'nvidia_peer_memory'
|
||||
# Requirements: Mellanox HCA with MLNX_OFED 2.1
|
||||
#
|
||||
# These kernel modules are not listed as system dependencies to lower the system
|
||||
# requirements to build this easyconfig, as they are not needed for the build.
|
||||
|
||||
skipsteps = ['configure']
|
||||
|
||||
local_envopts = "prefix=%(installdir)s"
|
||||
prebuildopts = "PATH=$PATH:/sbin " # ensures that ldconfig is found
|
||||
buildopts = "config lib %s" % local_envopts
|
||||
install_cmd = "make lib_install"
|
||||
installopts = local_envopts
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['lib/libgdrapi.%s' % SHLIB_EXT],
|
||||
'dirs': ['include'],
|
||||
}
|
||||
|
||||
moduleclass = 'lib'
|
32
g/grace/grace-5.1.25-intel-2020b.eb
Normal file
32
g/grace/grace-5.1.25-intel-2020b.eb
Normal file
@ -0,0 +1,32 @@
|
||||
# IT4Innovations 2021
|
||||
# JK - update homepage a zdroje
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'grace'
|
||||
version = '5.1.25'
|
||||
|
||||
homepage = 'https://plasma-gate.weizmann.ac.il/Grace/'
|
||||
description = """Grace is a WYSIWYG 2D plotting tool for X Windows System and Motif."""
|
||||
|
||||
source_urls = ['https://plasma-gate.weizmann.ac.il/pub/grace/src/stable/']
|
||||
sources = [SOURCE_TAR_GZ]
|
||||
|
||||
toolchain = {'name': 'intel', 'version': '2020b'}
|
||||
|
||||
#dependencies = [
|
||||
# ('motif', '2.3.8', '', True),
|
||||
# ('netCDF', '4.6.1'),
|
||||
#]
|
||||
|
||||
#runtest = 'tests'
|
||||
|
||||
# we also need to run make links right before or after make install.
|
||||
installopts = 'links'
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/xmgrace'],
|
||||
'dirs': [],
|
||||
}
|
||||
|
||||
moduleclass = 'vis'
|
28
h/HDF5/HDF5-1.10.7-iimpi-2021a.eb
Normal file
28
h/HDF5/HDF5-1.10.7-iimpi-2021a.eb
Normal file
@ -0,0 +1,28 @@
|
||||
# IT4Innovations
|
||||
# LK 2021
|
||||
|
||||
name = 'HDF5'
|
||||
version = '1.10.7'
|
||||
|
||||
homepage = 'https://portal.hdfgroup.org/display/support'
|
||||
description = """HDF5 is a data model, library, and file format for storing and managing data.
|
||||
It supports an unlimited variety of datatypes, and is designed for flexible
|
||||
and efficient I/O and for high volume and complex data."""
|
||||
|
||||
toolchain = {'name': 'iimpi', 'version': '2021a'}
|
||||
import os
|
||||
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
toolchainopts = {'pic': True, 'usempi': True, 'optarch': 'march=core-avx2'}
|
||||
else:
|
||||
toolchainopts = {'pic': True, 'usempi': True}
|
||||
|
||||
source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src']
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
checksums = ['7a1a0a54371275ce2dfc5cd093775bb025c365846512961e7e5ceaecb437ef15']
|
||||
|
||||
dependencies = [
|
||||
('zlib', '1.2.11'),
|
||||
('Szip', '2.1.1'),
|
||||
]
|
||||
|
||||
moduleclass = 'data'
|
@ -33,4 +33,6 @@ modextravars = {
|
||||
'I_MPI_EXTRA_FILESYSTEM_LIST': 'lustre',
|
||||
}
|
||||
|
||||
parallel = 1
|
||||
|
||||
moduleclass = 'mpi'
|
||||
|
65
n/NVHPC/NVHPC-21.9.eb
Normal file
65
n/NVHPC/NVHPC-21.9.eb
Normal file
@ -0,0 +1,65 @@
|
||||
# IT4Innovations 2021
|
||||
# LK
|
||||
|
||||
name = 'NVHPC'
|
||||
version = '21.9'
|
||||
|
||||
homepage = 'https://developer.nvidia.com/hpc-sdk/'
|
||||
description = """C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI)"""
|
||||
|
||||
toolchain = SYSTEM
|
||||
|
||||
# By downloading, you accept the HPC SDK Software License Agreement (https://docs.nvidia.com/hpc-sdk/eula/index.html)
|
||||
accept_eula = True
|
||||
source_urls = ['https://developer.download.nvidia.com/hpc-sdk/%(version)s/']
|
||||
local_tarball_tmpl = 'nvhpc_2021_%%(version_major)s%%(version_minor)s_Linux_%s_cuda_multi.tar.gz'
|
||||
sources = [local_tarball_tmpl % '%(arch)s']
|
||||
|
||||
local_gccver = '10.2.0'
|
||||
dependencies = [
|
||||
('GCCcore', local_gccver),
|
||||
('binutils', '2.35', '', ('GCCcore', local_gccver)),
|
||||
# This is necessary to avoid cases where just libnuma.so.1 is present in the system and -lnuma fails
|
||||
('numactl', '2.0.13', '', ('GCCcore', local_gccver))
|
||||
]
|
||||
|
||||
# specify default CUDA version that should be used by NVHPC
|
||||
# should match one of the CUDA versions that are included with this NVHPC version
|
||||
# (see install_components/Linux_x86_64/20.7/cuda/)
|
||||
# for NVHPC 20.7, those are: 11.0, 10.2, 10.1;
|
||||
# this version can be tweaked from the EasyBuild command line with
|
||||
# --try-amend=default_cuda_version="10.2" (for example)
|
||||
default_cuda_version = '11.4'
|
||||
|
||||
# NVHPC EasyBlock supports some features, which can be set via CLI or this easyconfig.
|
||||
# The following list gives examples for the easyconfig
|
||||
#
|
||||
# NVHPC needs CUDA to work. Two options are available: 1) Use NVHPC-bundled CUDA, 2) use system CUDA
|
||||
# 1) Bundled CUDA
|
||||
# If no easybuild dependency to CUDA is present, the bundled CUDA is taken. A version needs to be specified with
|
||||
# default_cuda_version = "11.0"
|
||||
# in this easyconfig file; alternatively, it can be specified through the command line during installation with
|
||||
# --try-amend=default_cuda_version="10.2"
|
||||
# 2) CUDA provided via EasyBuild
|
||||
# Use CUDAcore as a dependency, for example
|
||||
# dependencies = [('CUDAcore', '11.0.2')]
|
||||
# The parameter default_cuda_version still can be set as above.
|
||||
# If not set, it will be deduced from the CUDA module (via $EBVERSIONCUDA)
|
||||
#
|
||||
# Define a NVHPC-default Compute Capability
|
||||
# cuda_compute_capabilities = "8.0"
|
||||
cuda_compute_capabilities = '7.0' #V100 GPU
|
||||
# Can also be specified on the EasyBuild command line via --cuda-compute-capabilities=8.0
|
||||
# Only single values supported, not lists of values!
|
||||
#
|
||||
# Options to add/remove things to/from environment module (defaults shown)
|
||||
# module_byo_compilers = Yes # Remove compilers from PATH (Bring-your-own compilers)
|
||||
# module_nvhpc_own_mpi = False # Add NVHPC's own pre-compiled OpenMPI
|
||||
# module_add_math_libs = Yes # Add NVHPC's math libraries (which should be there from CUDA anyway)
|
||||
# module_add_profilers = Yes # Add NVHPC's NVIDIA Profilers
|
||||
# module_add_nccl = Yes # Add NVHPC's NCCL library
|
||||
# module_add_nvshmem = Yes # Add NVHPC's NVSHMEM library
|
||||
# module_add_cuda = Yes # Add NVHPC's bundled CUDA
|
||||
|
||||
# this bundle serves as a compiler-only toolchain, so it should be marked as compiler (important for HMNS)
|
||||
moduleclass = 'compiler'
|
44
o/OpenMPI/OpenMPI-4.0.6-NVHPC-21.9-CUDA-11.4.1.eb
Normal file
44
o/OpenMPI/OpenMPI-4.0.6-NVHPC-21.9-CUDA-11.4.1.eb
Normal file
@ -0,0 +1,44 @@
|
||||
# IT4Innovations 2021
|
||||
# LK
|
||||
|
||||
name = 'OpenMPI'
|
||||
version = '4.0.6'
|
||||
versionsuffix = '-CUDA-11.4.1'
|
||||
|
||||
homepage = 'https://www.open-mpi.org/'
|
||||
description = """The Open MPI Project is an open source MPI-3 implementation."""
|
||||
|
||||
toolchain = {'name': 'NVHPC', 'version': '21.9'}
|
||||
|
||||
source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
|
||||
sources = [SOURCELOWER_TAR_GZ]
|
||||
|
||||
dependencies = [
|
||||
('UCX', '1.11.2', versionsuffix),
|
||||
('CUDAcore', '11.4.1', '', True),
|
||||
('GDRCopy', '2.3', versionsuffix),
|
||||
]
|
||||
|
||||
preconfigopts = 'export CC="pgcc -noswitcherror" && export CXX="pgc++ -noswitcherror" && export FC="pgfortran -noswitcherror" && '
|
||||
|
||||
configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs '
|
||||
configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support
|
||||
configopts += '--enable-mpirun-prefix-by-default '
|
||||
configopts += '--with-tm=/opt/pbs ' # Enable PBS
|
||||
configopts += '--enable-mpi-cxx ' # Enable building the C++ MPI bindings
|
||||
configopts += '--with-ucx=$EBROOTUCX '
|
||||
configopts += '--with-cuda=$EBROOTCUDACORE '
|
||||
|
||||
moduleclass = 'mpi'
|
||||
|
||||
#setenv("OMPI_MCA_btl_openib_if_include", "mlx5_0")
|
||||
#setenv("export OMPI_MCA_btl_openib_allow_ib", "1")
|
||||
#setenv("OMPI_MCA_pml", "^ucx")
|
||||
#setenv("OMPI_MCA_orte_base_help_aggregate", "0")
|
||||
import os
|
||||
if os.environ.get("CLUSTERNAME") in ["BARBORA"]:
|
||||
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0',
|
||||
'OMPI_MCA_btl_openib_allow_ib': '1',
|
||||
'OMPI_MCA_orte_base_help_aggregate': '0',
|
||||
'OMPI_MCA_pml': '^ucx',
|
||||
}
|
63
o/OpenMPI/OpenMPI-4.1.1-AOCL-3.0.1-AOCC-3.1.0.eb
Normal file
63
o/OpenMPI/OpenMPI-4.1.1-AOCL-3.0.1-AOCC-3.1.0.eb
Normal file
@ -0,0 +1,63 @@
|
||||
# IT4Innovations
|
||||
# LK 2021
|
||||
|
||||
name = 'OpenMPI'
|
||||
version = '4.1.1'
|
||||
versionsuffix = '-AOCL-3.0.1-AOCC-3.1.0'
|
||||
|
||||
homepage = 'https://www.open-mpi.org/'
|
||||
description = """The Open MPI Project is an open source MPI-3 implementation."""
|
||||
|
||||
toolchain = {'name': 'GCC', 'version': '10.2.0'}
|
||||
|
||||
source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
|
||||
sources = [SOURCELOWER_TAR_BZ2]
|
||||
patches = [
|
||||
'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch',
|
||||
'OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch'
|
||||
]
|
||||
checksums = [
|
||||
'e24f7a778bd11a71ad0c14587a7f5b00e68a71aa5623e2157bafee3d44c07cda', # openmpi-4.1.1.tar.bz2
|
||||
# OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch
|
||||
'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e',
|
||||
# OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch
|
||||
'8acee6c9b2b4bf12873a39b85a58ca669de78e90d26186e52f221bb4853abc4d',
|
||||
]
|
||||
|
||||
builddependencies = [
|
||||
('pkg-config', '0.29.2'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('hwloc', '2.4.1', '-AOCL-3.0.1-AOCC-3.1.0', True),
|
||||
('UCX', '1.10.0', '-AOCL-3.0.1-AOCC-3.1.0', True),
|
||||
]
|
||||
|
||||
configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs '
|
||||
configopts += '--enable-mpirun-prefix-by-default '
|
||||
configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support
|
||||
configopts += '--with-tm=/opt/pbs ' # Enable PBS
|
||||
configopts += '--enable-mpi-cxx ' # Enable building the C++ MPI bindings
|
||||
configopts += '--with-ucx=$EBROOTUCX CC="clang" CXX="clang++" FC="flang"'
|
||||
|
||||
postinstallcmds = [
|
||||
'echo "# By default, for Open MPI 4.0 and later, infiniband ports on a device are not used by default." >> %(installdir)s/etc/openmpi-mca-params.conf',
|
||||
'echo "btl_openib_allow_ib = true" >> %(installdir)s/etc/openmpi-mca-params.conf',
|
||||
]
|
||||
|
||||
import os
|
||||
if os.environ.get("CLUSTERNAME") in ["BARBORA"]:
|
||||
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0',
|
||||
'OMPI_MCA_btl_tcp_if_include': '10.33.4.0/24',
|
||||
'OMPI_MCA_orte_base_help_aggregate': '0',
|
||||
}
|
||||
elif os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx5_0',
|
||||
'OMPI_MCA_orte_base_help_aggregate': '0',
|
||||
}
|
||||
else:
|
||||
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx4_0',
|
||||
'OMPI_MCA_oob_tcp_if_include': '10.0.0.0/8',
|
||||
}
|
||||
|
||||
moduleclass = 'mpi'
|
@ -1,5 +1,5 @@
|
||||
# IT4Innovations 2021
|
||||
# JK 2021
|
||||
# JK2021
|
||||
|
||||
easyblock = 'CMakeMake'
|
||||
|
||||
|
@ -11,22 +11,28 @@ homepage = "https://qmcpack.org/"
|
||||
description = """QMCPACK, is a modern high-performance open-source Quantum Monte Carlo (QMC) simulation code. Its main applications are electronic structure calculations of molecular, quasi-2D and solid-state systems. Variational Monte Carlo (VMC), diffusion Monte Carlo (DMC) and a number of other advanced QMC algorithms are implemented. Orbital space auxiliary field QMC (AFQMC) has recently been added. By directly solving the Schrodinger equation, QMC methods offer greater accuracy than methods such as density functional theory, but at a trade-off of much greater local_computational expense.
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'intel', 'version': '2020a'}
|
||||
toolchainopts = {'opt': True, 'pic': True, 'usempi': True}
|
||||
# vyžaduje GCC 9.3.0, které nemá podporu pro naše AMD procesory => kompilace s druhým AMD hackem je broken
|
||||
toolchain = {'name': 'intel', 'version': '2020b'}
|
||||
import os
|
||||
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
|
||||
toolchainopts = {'opt': True, 'pic': True, 'usempi': True, 'optarch': 'march=core-avx2'}
|
||||
# prebuildopts = "echo %(builddir)s && while read i; do echo $i; sed 's|-xHost|-march=core-avx2|g' -i $i; done < <(grep xHost %(builddir)s -R | cut -d ':' -f 1 | sort -u) &&"
|
||||
else:
|
||||
toolchainopts = {'opt': True, 'pic': True, 'usempi': True}
|
||||
|
||||
source_urls = ['https://github.com/QMCPACK/qmcpack/archive/']
|
||||
sources = ['v%(version)s.tar.gz']
|
||||
|
||||
builddependencies = [('CMake', '3.16.4')]
|
||||
builddependencies = [('CMake', '3.20.1', '', True)]
|
||||
|
||||
dependencies = [
|
||||
('libxml2', '2.9.10'),
|
||||
('Boost', '1.72.0'),
|
||||
('HDF5', '1.10.6', '', ('iimpi', '2020a')),
|
||||
('Python', '3.8.2'),
|
||||
('h5py', '2.10.0', '-Python-3.8.2'), # versionsuffix
|
||||
('numpy', '1.18.3', '-Python-3.8.2'),
|
||||
('matplotlib', '3.2.1', '-Python-3.8.2'),
|
||||
('Boost', '1.74.0'),
|
||||
('HDF5', '1.10.6', '-parallel'),
|
||||
('Python', '3.8.6'),
|
||||
('h5py', '3.1.0'),
|
||||
('SciPy-bundle', '2020.11'),
|
||||
('GCC', '9.3.0', '', True), # obejití podmínky GCC 9.3.0
|
||||
]
|
||||
|
||||
separate_build_dir = True
|
||||
@ -40,6 +46,7 @@ preinstallopts = [
|
||||
' cp -r %(builddir)s/qmcpack-%(version)s/nexus/lib %(installdir)s/nexus/lib && ',
|
||||
]
|
||||
|
||||
|
||||
# prida nexus knihovny do PYTHONPATH
|
||||
modextrapaths = {'PYTHONPATH': 'nexus/lib'}
|
||||
|
47
s/Singularity/Singularity-3.8.3.eb
Normal file
47
s/Singularity/Singularity-3.8.3.eb
Normal file
@ -0,0 +1,47 @@
|
||||
# IT4Innovations
|
||||
# LK 2021
|
||||
|
||||
# Dokoncit `make install` rucne, nejde bez ROOTa !!!
|
||||
# /apps/all/Singularity/3.7.0/etc/singularity/singularity.conf nv=yes !!!
|
||||
# Poslat info na tomas.karasek@vsb.cz o zmene...
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'Singularity'
|
||||
version = '3.8.3'
|
||||
|
||||
homepage = 'https://github.com/sylabs/singularity'
|
||||
description = "Singularity is an open source container platform designed to be simple, fast, and secure. Singularity is optimized for EPC and HPC workloads, allowing untrusted users to run untrusted containers in a trusted way."
|
||||
|
||||
toolchain = SYSTEM
|
||||
|
||||
source_urls = ['https://github.com/hpcng/singularity/releases/download/v%s/' % version]
|
||||
sources = ['singularity-%(version)s.tar.gz']
|
||||
|
||||
builddependencies = [
|
||||
('Go', '1.13.5'),
|
||||
]
|
||||
|
||||
dependencies = [
|
||||
('squashfs-tools', '4.3'),
|
||||
]
|
||||
|
||||
osdependencies = [
|
||||
('openssl-devel', 'libssl-dev', 'libopenssl-devel'),
|
||||
]
|
||||
|
||||
skipsteps = ['configure']
|
||||
prebuildopts = './mconfig --prefix=%(installdir)s && '
|
||||
buildopts = '-C ./builddir'
|
||||
|
||||
|
||||
postinstallcmds = [
|
||||
'echo "mksquashfs path = /apps/all/squashfs-tools/4.3/bin" >> %(installdir)s/etc/singularity/singularity.conf',
|
||||
]
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/singularity'],
|
||||
'dirs': ['bin', 'etc', 'libexec', 'var'],
|
||||
}
|
||||
|
||||
moduleclass = 'tools'
|
51
u/UCX/UCX-1.11.2-NVHPC-21.9-CUDA-11.4.1.eb
Normal file
51
u/UCX/UCX-1.11.2-NVHPC-21.9-CUDA-11.4.1.eb
Normal file
@ -0,0 +1,51 @@
|
||||
# IT4Innovations 2021
|
||||
# LK
|
||||
|
||||
easyblock = 'ConfigureMake'
|
||||
|
||||
name = 'UCX'
|
||||
version = '1.11.2'
|
||||
versionsuffix= '-CUDA-11.4.1'
|
||||
|
||||
homepage = 'http://www.openucx.org/'
|
||||
description = """Unified Communication X
|
||||
An open-source production grade communication framework for data centric
|
||||
and high-performance applications
|
||||
"""
|
||||
|
||||
toolchain = {'name': 'NVHPC', 'version': '21.9'}
|
||||
toolchainopts = {'pic': True}
|
||||
|
||||
source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s']
|
||||
sources = ['%(namelower)s-%(version)s.tar.gz']
|
||||
#patches = ['%(name)s-%(version)s.patch']
|
||||
|
||||
builddependencies = [
|
||||
('binutils', '2.35'),
|
||||
('Autotools', '20200321'),
|
||||
('pkg-config', '0.29.2'),
|
||||
]
|
||||
|
||||
osdependencies = [OS_PKG_IBVERBS_DEV]
|
||||
|
||||
dependencies = [
|
||||
('numactl', '2.0.13'),
|
||||
('CUDAcore', '11.4.1', '', True),
|
||||
('GDRCopy', '2.3', '-CUDA-11.4.1'),
|
||||
]
|
||||
|
||||
configure_cmd = "contrib/configure-release"
|
||||
|
||||
configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs --with-gdrcopy=$EBROOTGDRCOPY '
|
||||
configopts += '--without-java --disable-doxygen-doc --with-cuda=$EBROOTCUDACORE '
|
||||
|
||||
buildopts = 'V=1'
|
||||
|
||||
sanity_check_paths = {
|
||||
'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'],
|
||||
'dirs': ['include', 'lib', 'share']
|
||||
}
|
||||
|
||||
#sanity_check_commands = ["ucx_info -d"]
|
||||
|
||||
moduleclass = 'lib'
|
Loading…
x
Reference in New Issue
Block a user