new file: a/ABINIT/ABINIT-9.4.1-intel-2020b.eb

modified:   a/ABINIT/ABINIT-9.4.2-intel-2020b.eb
	new file:   a/ANSYS/ANSYS-20.2-intel-2017c.eb
	new file:   g/grace/grace-5.1.25-intel-2020b.eb
	modified:   i/impi/impi-2017.4.239-iccifort-2017.8.262-GCC-6.3.0-2.27.eb
	new file:   o/OpenMPI/OpenMPI-4.1.1-AOCL-3.0.1-AOCC-3.1.0.eb
	new file:   q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2-test.eb
	new file:   s/Singularity/Singularity-3.8.3.eb
This commit is contained in:
Jakub Kropacek 2021-10-06 19:33:14 +02:00 committed by easybuild
parent 38bf743baa
commit 64bdf01391
8 changed files with 299 additions and 1 deletions

View 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'

View File

@ -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]

View 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'

View 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'

View File

@ -33,4 +33,6 @@ modextravars = {
'I_MPI_EXTRA_FILESYSTEM_LIST': 'lustre',
}
parallel = 1
moduleclass = 'mpi'

View 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'

View File

@ -0,0 +1,57 @@
# IT4Innovations 2021
# JK 2021
easyblock = 'CMakeMake'
name = 'QMCPACK'
version = '3.11.0'
versionsuffix = "-Python-%(pyver)s-test"
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, 'optarch': 'march=core-avx2'}
# AMD/intel cpu
import os
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
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) && "
source_urls = ['https://github.com/QMCPACK/qmcpack/archive/']
sources = ['v%(version)s.tar.gz']
builddependencies = [('CMake', '3.16.4')]
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'),
]
separate_build_dir = True
configopts = ' -DENABLE_SOA=1 '
# prekopiruje nexus knihovny o kterych install file tvrdi, ze nejsou potreba
# ale evidentne to bez nich nejede
preinstallopts = [
' mkdir -p %(installdir)s/nexus && ',
' cp -r %(builddir)s/qmcpack-%(version)s/nexus/lib %(installdir)s/nexus/lib && ',
]
# prida nexus knihovny do PYTHONPATH
modextrapaths = {'PYTHONPATH': 'nexus/lib'}
sanity_check_paths = {
'files': ['bin/qmcpack'],
'dirs': ['bin'],
}
moduleclass = 'phys'

View 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'