modified: b/BAGEL/BAGEL-1.2.2-intel-2021b.eb

new file:   d/DFTB+/DFTB+-21.1-intel-2021a.eb
	new file:   d/DFTB+/DFTB+-22.1-intel-2020b-ARPACK.eb
	modified:   d/DFTB+/DFTB+-22.1-intel-2020b.eb
	new file:   e/ELSI/ELSI-2.6.4-intel-2020b.eb
This commit is contained in:
Jakub Kropacek 2022-06-24 12:25:55 +02:00 committed by easybuild
parent d744817af3
commit d113176f30
5 changed files with 220 additions and 18 deletions

View File

@ -30,7 +30,7 @@ dependencies = [
# Hack, because bagel-v1.1.1 uses outdated filenames:
preconfigopts = 'sed -i "s|-gcc-mt||g" configure.ac && '
preconfigopts += './autogen.sh && '
preconfigopts += 'I_MPI_ICC=mpiicc MPICC=mpiicc I_MPI_CXX=mpigcc MPICXX=mpigcc CXXFLAGS="$CXXFLAGS -DNDEBUG -std=c++17 -lstdc++" '
preconfigopts += 'I_MPI_ICC=mpiicc MPICC=mpiicc I_MPI_CXX=mpigcc MPICXX=mpigcc CXXFLAGS="$CXXFLAGS -DNDEBUG -std=c++98 -lstdc++" '
configopts = ' --with-boost=$BOOST_ROOT --with-mpi=intel --enable-mkl --with-libxc '
sanity_check_paths = {

View File

@ -0,0 +1,82 @@
easyblock = 'CMakeMake'
name = 'DFTB+'
version = '21.1'
homepage = 'https://www.dftb-plus.info'
description = """DFTB+ is a fast and efficient versatile quantum mechanical simulation package.
It is based on the Density Functional Tight Binding (DFTB) method, containing
almost all of the useful extensions which have been developed for the DFTB
framework so far. Using DFTB+ you can carry out quantum mechanical simulations
like with ab-initio density functional theory based packages, but in an
approximate way gaining typically around two order of magnitude in speed."""
toolchain = {'name': 'intel', 'version': '2021a'}
toolchainopts = {'usempi': True, 'openmp': True, 'extra_fflags': '-I$(EBROOTDFTD3MINLIB)/include'}
local_external_dir = '%%(builddir)s/dftbplus-%%(version)s/external/%s/origin/'
local_external_extract = 'mkdir -p %s && tar -C %s' % (local_external_dir, local_external_dir)
local_external_extract += ' --strip-components=1 -xzf %%s'
source_urls = ['https://github.com/dftbplus/dftbplus/releases/download/%(version)s']
sources = [
'dftbplus-%(version)s.tar.xz',
{
# Slater-Koster (slakos) data for testing
'source_urls': ['https://github.com/dftbplus/testparams/archive'],
'download_filename': '26439495c4b5b0d07be6ceec4dade3d149425465.tar.gz',
'filename': 'slakos-data-%(version)s.tar.gz',
'extract_cmd': local_external_extract % ('slakos', 'slakos'),
},
{
# GBSA (gbsa) data for testing
'source_urls': ['https://github.com/grimme-lab/gbsa-parameters/archive'],
'download_filename': '6836c4d997e4135e418cfbe273c96b1a3adb13e2.tar.gz',
'filename': 'gbsa-data-%(version)s.tar.gz',
'extract_cmd': local_external_extract % ('gbsa', 'gbsa'),
},
]
patches = [
'%(name)s-%(version)s_use_dftd3_from_EB.patch',
'%(name)s-%(version)s_fix_intel_omp_linking.patch',
'%(name)s-%(version)s_drop_intel_failing_tests.patch',
]
checksums = [
'8c1eb8a38f72c421e2ae20118a6db3a656fa84e8b180ef387e549a73ae77f970', # dftbplus-21.1.tar.xz
'6f65da7b64ef255fd777de7a972c63f7fa8ed2041442823b2c601bc8f0e55d98', # slakos-data-21.1.tar.gz
'd464f9f7b1883d1353b433d0c7eae2f5606af092d9b51d38e9ed15e072610a79', # gbsa-data-21.1.tar.gz
'3bd33d8e90e8182f516f15fb8f79d01929a0778e324b33c5fabc7d70112e643a', # DFTB+-21.1_use_dftd3_from_EB.patch
'e922b0d9360d342190c4496173f938c2cb89f0bd0499b2f71abcaf70dc8e5fe1', # DFTB+-21.1_fix_intel_omp_linking.patch
'f0c0e248d567739010897e7a46e471b1e332568bb0f9c1c06fd1e762d3f81aa4', # DFTB+-21.1_drop_intel_failing_tests.patch
]
builddependencies = [
('CMake', '3.20.1'),
('pkg-config', '0.29.2'),
]
dependencies = [
('Python', '3.9.5'),
('SciPy-bundle', '2021.05'),
('dftd3-lib', '0.9'),
('ELSI', '2.7.1', '-PEXSI'),
]
build_shared_libs = True
configopts = '-DWITH_MPI=1 -DWITH_DFTD3=1 -DWITH_ELSI=1 -DWITH_MBD=1 -DWITH_UNIT_TESTS=1 '
configopts += '-DSCALAPACK_LIBRARY="$LIBSCALAPACK" '
runtest = 'test'
sanity_check_paths = {
'files': ['bin/' + x for x in ['dftb+', 'dp_bands', 'dp_dos', 'gen2cif', 'gen2xyz', 'makecube',
'modes', 'repeatgen', 'straingen', 'waveplot', 'xyz2gen']],
'dirs': ['lib/python%(pyshortver)s/site-packages']
}
sanity_check_commands = [("python -c 'import dptools'")]
modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'}
moduleclass = 'phys'

View File

@ -0,0 +1,91 @@
# IT4Innovations
# LK JK 2022
easyblock = 'CMakeMake'
name = 'DFTB+'
version = '22.1'
versionsuffix = '-ARPACK'
homepage = 'https://www.dftb-plus.info'
description = """DFTB+ is a fast and efficient versatile quantum mechanical simulation package.
It is based on the Density Functional Tight Binding (DFTB) method, containing
almost all of the useful extensions which have been developed for the DFTB
framework so far. Using DFTB+ you can carry out quantum mechanical simulations
like with ab-initio density functional theory based packages, but in an
approximate way gaining typically around two order of magnitude in speed.
This compilation is linked against the ARPACK library, and as such does not support
MPI-parallelization.
"""
toolchain = {'name': 'intel', 'version': '2020b'}
# AMD/intel cpu
#toolchainopts = {'lowopt': True, 'optarch': False} # original
import os
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
toolchainopts = {'lowopt': True, 'optarch': 'march=core-avx2'}
else:
toolchainopts = {'lowopt': True, 'optarch': False}
local_external_dir = '%%(builddir)s/dftbplus-%%(version)s/external/%s/origin/'
local_external_extract = 'mkdir -p %s && tar -C %s' % (local_external_dir, local_external_dir)
local_external_extract += ' --strip-components=1 -xzf %%s'
sources = [
{
# DFTB+ source code
'source_urls': ['https://github.com/dftbplus/dftbplus/archive'],
'download_filename': '%(version)s.tar.gz',
'filename': SOURCE_TAR_GZ,
},
{
# Slater-Koster (slakos) data for testing
'source_urls': ['https://github.com/dftbplus/testparams/archive'],
'download_filename': 'd0ea16df2b56d14c7c3dc9329a8d3bac9fea50a0.tar.gz',
'filename': 'slakos-data-%(version)s.tar.gz',
'extract_cmd': local_external_extract % ('slakos', 'slakos'),
},
]
checksums = [
'f0fc9a076aa2d7be03c31a3a845d8151fc0cc0b1d421e11c37044f78a42abb33', # DFTB+-22.1.tar.gz
'9b64193368a13ae7c238399da8be2b3730a0f3273f9bf6c8054b2ff57d748823', # slakos-data-22.1.tar.gz
]
builddependencies = [
('CMake', '3.18.4'),
]
dependencies = [
# ('Python', '3.8.6'),
# ('SciPy-bundle', '2020.11'),
('arpack-ng', '3.8.0'),
('dftd3-lib', '0.9.2', '', ('GCC', '10.2.0')),
('tblite', '0.2.1'),
]
# Link to Arpack
configopts = ' -DWITH_ARPACK=1 -DARPACK_LIBS="-L$EBROOTARPACKMINNG/lib -larpack" -DARPACK_NEEDS_LAPACK=1'
# Use DFTD3 from += ' WITH_DFTD3=1 COMPILE_DFTD3=0 DFTD3_INCS="-I$EBROOTDFTD3MINLIB/include"'
configopts += ' -DWITH_DFTD3=1 -DCOMPILE_DFTD3=0 -DDFTD3_INCS="-I$EBROOTDFTD3MINLIB/include"'
configopts += ' -DDFTD3_LIBS="-L$EBROOTDFTD3MINLIB/lib -ldftd3"'
# Link to tblite
configopts += ' -DWITH_TBLITE=true '
#buildopts = local_makeopts
#runtest = 'test' + local_makeopts
installopts = 'INSTALLDIR="%(installdir)s"'
sanity_check_paths = {
'files': ['bin/' + x for x in ['dftb+', 'modes', 'waveplot']],
'dirs': []
}
#sanity_check_commands = [('python', '-c "import dptools"')]
#modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'}
moduleclass = 'phys'

View File

@ -1,5 +1,5 @@
# IT4Innovations
# LK 2022
# LK JK 2022
easyblock = 'CMakeMake'
@ -16,7 +16,6 @@ approximate way gaining typically around two order of magnitude in speed."""
toolchain = {'name': 'intel', 'version': '2020b'}
# AMD/intel cpu
#toolchainopts = {'lowopt': True, 'optarch': False} # original
import os
if os.environ.get("CLUSTERNAME") in ["KAROLINA"]:
toolchainopts = {'lowopt': True, 'optarch': 'march=core-avx2'}
@ -55,22 +54,19 @@ builddependencies = [
dependencies = [
# ('Python', '3.8.6'),
# ('SciPy-bundle', '2020.11'),
('arpack-ng', '3.8.0'),
# ('arpack-ng', '3.8.0'),
('dftd3-lib', '0.9.2', '', ('GCC', '10.2.0')),
('ELSI', '2.6.4'),
('tblite', '0.2.1'),
]
# Link to Arpack
local_makeopts = ' WITH_MPI=1 WITH_ARPACK=1 ARPACK_LIBS="-L$EBROOTARPACKMINNG/lib -larpack" ARPACK_NEEDS_LAPACK=1'
# Use DFTD3 from EB
local_makeopts += ' WITH_DFTD3=1 COMPILE_DFTD3=0 DFTD3_INCS="-I$EBROOTDFTD3MINLIB/include"'
local_makeopts += ' DFTD3_LIBS="-L$EBROOTDFTD3MINLIB/lib -ldftd3"'
# Enable MPI parallelism and ELSI
configopts = ' -DWITH_MPI=1 -DWITH_ELSI=1 '
# Use DFTD3 from += ' WITH_DFTD3=1 COMPILE_DFTD3=0 DFTD3_INCS="-I$EBROOTDFTD3MINLIB/include"'
configopts += ' -DWITH_DFTD3=1 -DCOMPILE_DFTD3=0 -DDFTD3_INCS="-I$EBROOTDFTD3MINLIB/include"'
configopts += ' -DDFTD3_LIBS="-L$EBROOTDFTD3MINLIB/lib -ldftd3"'
# Link to tblite
configopts = ' -DWITH_TBLITE=true '
buildopts = local_makeopts
#runtest = 'test' + local_makeopts
configopts += ' -DWITH_TBLITE=1 '
installopts = 'INSTALLDIR="%(installdir)s"'
@ -79,8 +75,4 @@ sanity_check_paths = {
'dirs': []
}
#sanity_check_commands = [('python', '-c "import dptools"')]
#modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'}
moduleclass = 'phys'

View File

@ -0,0 +1,37 @@
# IT4Innovations
# LK JK 2022
name = 'ELSI'
version = '2.6.4'
homepage = 'https://wordpress.elsi-interchange.org/'
description = """ELSI provides and enhances scalable, open-source software library solutions for
electronic structure calculations in materials science, condensed matter physics, chemistry, and many other fields.
ELSI focuses on methods that solve or circumvent eigenvalue problems in electronic structure theory.
The ELSI infrastructure should also be useful for other challenging eigenvalue problems.
"""
toolchain = {'name': 'intel', 'version': '2020b'}
toolchainopts = {'usempi': True, 'pic': True}
source_urls = ['http://wordpress.elsi-interchange.org/wp-content/uploads/2020/11/']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['e43fc12b4954ecd70813fcb45aaef39779f7d9bb5270bbc7246e88d92c8b1dc4']
builddependencies = [
('flex', '2.6.4'),
('Bison', '3.7.1'),
('CMake', '3.18.4'),
]
dependencies = [
('ELPA', '2020.11.001'),
# ('SLEPc', '3.13.3'),
]
# SLEPc and internal PEXSI can't coexist due to conflicting dependencies
build_internal_pexsi = False
runtest = True
moduleclass = 'math'