mirror of
https://code.it4i.cz/sccs/easyconfigs-it4i.git
synced 2025-04-07 15:32:11 +01:00
new file: a/ABINIT/ABINIT-9.4.2-intel-2021a.eb
modified: o/OpenMPI/OpenMPI-4.0.6-NVHPC-21.9-CUDA-11.4.1.eb
This commit is contained in:
parent
73ee681a9a
commit
d118b2bdcc
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'
|
@ -30,3 +30,15 @@ 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',
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user