From 9dde6530b9a3cad9077a859a8bae201ee42ab98d Mon Sep 17 00:00:00 2001 From: easybuild Date: Fri, 2 Jul 2021 11:52:11 +0200 Subject: [PATCH] add karolina --- a/ANSYS/ANSYS-21.1-intel-2018a.eb | 25 ++++ a/arpack-ng/arpack-ng-3.8.0-intel-2020b.eb | 38 +++++ ...rkeleyGW-2.1.0-intel-2020b-Python-3.8.6.eb | 37 +++++ .../BerkeleyGW-2.1.0_missing_file.patch | 13 ++ b/BerkeleyGW/BerkeleyGW-2.1.0_tests.patch | 42 ++++++ b/Bison/Bison-3.7.6-GCCcore-10.2.0.eb | 28 ++++ b/bwidget/bwidget-1.9.14-GCCcore-10.2.0.eb | 26 ++++ c/CMake/CMake-3.18.4.eb | 33 +++++ c/cURL/cURL-7.72.0.eb | 46 ++++++ .../DFTB+-21.1-intel-2020a-Python-3.8.2.eb | 72 ++++++++++ .../DFTB+-21.1-intel-2020b-Python-3.8.6.eb | 74 ++++++++++ d/DFTB+/config.cmake-MANUAL-INSTALATION.patch | 133 ++++++++++++++++++ d/dftd3-lib/dftd3-lib-0.9.2-GCC-10.2.0.eb | 38 +++++ .../dftd3-lib-0.9.2_fix-extras-syntax.patch | 22 +++ e/ELPA/ELPA-2019.11.001-intel-2020b.eb | 28 ++++ .../GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.0.eb | 59 ++++++++ .../GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.2.eb | 59 ++++++++ .../GDRCopy-2.1-NVHPC-21.2-CUDA-11.3.0.eb | 59 ++++++++ g/git/git-2.31.1.eb | 29 ++++ h/HDF5/HDF5-1.10.6-iimpi-2020a.eb | 31 ++++ h/HDF5/HDF5-1.10.6-iimpi-2020b.eb | 24 ++++ h/HDF5/HDF5-1.10.6-intel-2020a-parallel.eb | 5 + h/HDF5/HDF5-1.10.6-intel-2020a.eb | 7 +- .../h5py-2.10.0-intel-2020b-Python-3.8.6.eb | 40 ++++++ h/hypothesis/hypothesis-6.13.1-GCC-10.2.0.eb | 25 ++++ i/iimpi/iimpi-2020a.eb | 20 +++ ...74-iccifort-2019.1.144-GCC-8.2.0-2.31.1.eb | 38 +++++ i/impi/impi-2019.9.304-iccifort-2020.1.217.eb | 35 +++++ .../impi-2021.2.0-intel-compilers-2021.2.0.eb | 29 ++++ i/intel-compilers/intel-compilers-2021.2.0.eb | 45 ++++++ i/intel/intel-2020a.eb | 24 ++++ l/libarchive/libarchive-3.4.3.eb | 26 ++++ m/MATLAB/MATLAB-2021a.eb | 30 ++++ m/MATLAB/README.md | 36 +++++ ...Molpro-mpp-2021.1.0.linux_x86_64_openmp.eb | 23 +++ n/Newton-X/Newton-X-2.2-B09-intel-2020b.eb | 35 +++++ n/Newton-X/newton-x-2.2.patch | 70 +++++++++ .../OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.2.2.eb | 32 +++++ .../OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.3.0.eb | 32 +++++ o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0.eb | 65 +++++++++ .../pkgconfig-1.5.1-GCCcore-10.2.0-python.eb | 30 ++++ .../pybind11-2.4.3-GCC-10.2.0-Python-3.8.6.eb | 30 ++++ .../pybind11-2.6.0-GCC-10.2.0-Python-3.8.6.eb | 26 ++++ .../Schrodinger_2021-2_Linux-x86_64.eb | 40 ++++++ ...bundle-2020.03-intel-2020b-Python-3.8.6.eb | 58 ++++++++ .../SciPy-bundle-2021.05-intel-2020b.eb | 65 +++++++++ s/Singularity/Singularity-3.8.0.eb | 46 ++++++ s/SoX/SoX-14.4.2-intel-2020b.eb | 22 +++ s/SoX/SoX-14.4.2.eb | 3 +- t/Tcl/Tcl-8.6.11-GCCcore-10.2.0.eb | 41 ++++++ t/Tk/Tk-8.6.11-GCCcore-10.2.0.eb | 40 ++++++ t/Togl/Togl-2.0-GCCcore-10.2.0.eb | 49 +++++++ t/Togl/Togl-2.0_configure.patch | 91 ++++++++++++ t/Togl/Togl-2.0_decl.patch | 13 ++ u/UCX/UCX-1.10.1-NVHPC-21.2-CUDA-11.3.0.eb | 51 +++++++ u/UCX/UCX-1.9.0-GCCcore-8.2.0.eb | 48 +++++++ u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.2.2.eb | 51 +++++++ u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.3.0.eb | 51 +++++++ ...ntel-2020a-mkl=sequential-BEEF-karolina.eb | 70 +++++++++ ...P-5.4.4-intel-2020a-mkl=sequential-BEEF.eb | 9 +- ...2.0-intel-2020b-mkl=sequential-karolina.eb | 67 +++++++++ v/VASP/VASP-6.2.0-intel-2020b.eb | 52 +++++++ ...2.1-intel-2020b-mkl=sequential-karolina.eb | 67 +++++++++ x/XCrySDen/XCrySDen-1.6.2-intel-2020b.eb | 30 ++++ y/Yambo/Yambo-5.0.0-intel-2020a.eb | 2 +- 65 files changed, 2580 insertions(+), 5 deletions(-) create mode 100644 a/ANSYS/ANSYS-21.1-intel-2018a.eb create mode 100644 a/arpack-ng/arpack-ng-3.8.0-intel-2020b.eb create mode 100644 b/BerkeleyGW/BerkeleyGW-2.1.0-intel-2020b-Python-3.8.6.eb create mode 100644 b/BerkeleyGW/BerkeleyGW-2.1.0_missing_file.patch create mode 100644 b/BerkeleyGW/BerkeleyGW-2.1.0_tests.patch create mode 100644 b/Bison/Bison-3.7.6-GCCcore-10.2.0.eb create mode 100644 b/bwidget/bwidget-1.9.14-GCCcore-10.2.0.eb create mode 100644 c/CMake/CMake-3.18.4.eb create mode 100644 c/cURL/cURL-7.72.0.eb create mode 100644 d/DFTB+/DFTB+-21.1-intel-2020a-Python-3.8.2.eb create mode 100644 d/DFTB+/DFTB+-21.1-intel-2020b-Python-3.8.6.eb create mode 100644 d/DFTB+/config.cmake-MANUAL-INSTALATION.patch create mode 100644 d/dftd3-lib/dftd3-lib-0.9.2-GCC-10.2.0.eb create mode 100644 d/dftd3-lib/dftd3-lib-0.9.2_fix-extras-syntax.patch create mode 100644 e/ELPA/ELPA-2019.11.001-intel-2020b.eb create mode 100644 g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.0.eb create mode 100644 g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.2.eb create mode 100644 g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.3.0.eb create mode 100644 g/git/git-2.31.1.eb create mode 100644 h/HDF5/HDF5-1.10.6-iimpi-2020a.eb create mode 100644 h/HDF5/HDF5-1.10.6-iimpi-2020b.eb create mode 100644 h/h5py/h5py-2.10.0-intel-2020b-Python-3.8.6.eb create mode 100644 h/hypothesis/hypothesis-6.13.1-GCC-10.2.0.eb create mode 100644 i/iimpi/iimpi-2020a.eb create mode 100644 i/impi/impi-2018.4.274-iccifort-2019.1.144-GCC-8.2.0-2.31.1.eb create mode 100644 i/impi/impi-2019.9.304-iccifort-2020.1.217.eb create mode 100644 i/impi/impi-2021.2.0-intel-compilers-2021.2.0.eb create mode 100644 i/intel-compilers/intel-compilers-2021.2.0.eb create mode 100644 i/intel/intel-2020a.eb create mode 100644 l/libarchive/libarchive-3.4.3.eb create mode 100644 m/MATLAB/MATLAB-2021a.eb create mode 100644 m/MATLAB/README.md create mode 100644 m/Molpro/Molpro-mpp-2021.1.0.linux_x86_64_openmp.eb create mode 100644 n/Newton-X/Newton-X-2.2-B09-intel-2020b.eb create mode 100644 n/Newton-X/newton-x-2.2.patch create mode 100644 o/OpenMPI/OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.2.2.eb create mode 100644 o/OpenMPI/OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.3.0.eb create mode 100644 o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0.eb create mode 100644 p/pkgconfig/pkgconfig-1.5.1-GCCcore-10.2.0-python.eb create mode 100644 p/pybind11/pybind11-2.4.3-GCC-10.2.0-Python-3.8.6.eb create mode 100644 p/pybind11/pybind11-2.6.0-GCC-10.2.0-Python-3.8.6.eb create mode 100644 s/Schrodinger/Schrodinger_2021-2_Linux-x86_64.eb create mode 100644 s/SciPy-bundle/SciPy-bundle-2020.03-intel-2020b-Python-3.8.6.eb create mode 100644 s/SciPy-bundle/SciPy-bundle-2021.05-intel-2020b.eb create mode 100644 s/Singularity/Singularity-3.8.0.eb create mode 100644 s/SoX/SoX-14.4.2-intel-2020b.eb create mode 100644 t/Tcl/Tcl-8.6.11-GCCcore-10.2.0.eb create mode 100644 t/Tk/Tk-8.6.11-GCCcore-10.2.0.eb create mode 100644 t/Togl/Togl-2.0-GCCcore-10.2.0.eb create mode 100644 t/Togl/Togl-2.0_configure.patch create mode 100644 t/Togl/Togl-2.0_decl.patch create mode 100644 u/UCX/UCX-1.10.1-NVHPC-21.2-CUDA-11.3.0.eb create mode 100644 u/UCX/UCX-1.9.0-GCCcore-8.2.0.eb create mode 100644 u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.2.2.eb create mode 100644 u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.3.0.eb create mode 100644 v/VASP/VASP-5.4.4-intel-2020a-mkl=sequential-BEEF-karolina.eb create mode 100644 v/VASP/VASP-6.2.0-intel-2020b-mkl=sequential-karolina.eb create mode 100644 v/VASP/VASP-6.2.0-intel-2020b.eb create mode 100644 v/VASP/VASP-6.2.1-intel-2020b-mkl=sequential-karolina.eb create mode 100644 x/XCrySDen/XCrySDen-1.6.2-intel-2020b.eb diff --git a/a/ANSYS/ANSYS-21.1-intel-2018a.eb b/a/ANSYS/ANSYS-21.1-intel-2018a.eb new file mode 100644 index 00000000..213e284c --- /dev/null +++ b/a/ANSYS/ANSYS-21.1-intel-2018a.eb @@ -0,0 +1,25 @@ +# IT4Innovations 2019 + +name = 'ANSYS' +version = '21.1' + +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': '2018a'} + +# 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-21.1.tar.gz'] + +dependencies = [ + ('libGLU', '9.0.0', '', True), +] + +import os +license_server = os.getenv('EB_ANSYS_LICENSE_SERVER', 'lm-brno.ics.muni.cz') +license_server_port = os.getenv('EB_ANSYS_LICENSE_SERVER_PORT', '2325:1055') + +moduleclass = 'tools' diff --git a/a/arpack-ng/arpack-ng-3.8.0-intel-2020b.eb b/a/arpack-ng/arpack-ng-3.8.0-intel-2020b.eb new file mode 100644 index 00000000..b9d8ff5f --- /dev/null +++ b/a/arpack-ng/arpack-ng-3.8.0-intel-2020b.eb @@ -0,0 +1,38 @@ +# IT$Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'arpack-ng' +version = "3.8.0" + +homepage = 'https://github.com/opencollab/arpack-ng' +description = """ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems.""" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'pic': True, 'usempi': True} + +github_account = 'opencollab' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['ada5aeb3878874383307239c9235b716a8a170c6d096a6625bfd529844df003d'] + +builddependencies = [ + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Eigen', '3.3.8') +] + +preconfigopts = "sh bootstrap && " +configopts = '--enable-mpi --with-pic --with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK"' + +sanity_check_paths = { + 'files': ["lib64/libarpack.la", "lib64/libarpack.%s" % SHLIB_EXT, + "lib64/libparpack.la", "lib64/libparpack.%s" % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'numlib' diff --git a/b/BerkeleyGW/BerkeleyGW-2.1.0-intel-2020b-Python-3.8.6.eb b/b/BerkeleyGW/BerkeleyGW-2.1.0-intel-2020b-Python-3.8.6.eb new file mode 100644 index 00000000..80c87747 --- /dev/null +++ b/b/BerkeleyGW/BerkeleyGW-2.1.0-intel-2020b-Python-3.8.6.eb @@ -0,0 +1,37 @@ +# IT4Innovations 2021 +# LK + +name = 'BerkeleyGW' +version = '2.1.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.berkeleygw.org' +description = """The BerkeleyGW Package is a set of computer codes that calculates the quasiparticle + properties and the optical responses of a large variety of materials from bulk periodic crystals to + nanostructures such as slabs, wires and molecules.""" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'usempi': True, 'openmp': True, 'precise': True} + +source_urls = ['https://berkeley.box.com/shared/static/'] +sources = [{'download_filename': 'ze3azi5vlyw7hpwvl9i5f82kaiid6g0x.gz', 'filename': SOURCE_TAR_GZ}] +patches = [ + 'BerkeleyGW-2.1.0_missing_file.patch', + 'BerkeleyGW-2.1.0_tests.patch', +] +checksums = [ + '31f3b643dd937350c3866338321d675d4a1b1f54c730b43ad74ae67e75a9e6f2', # BerkeleyGW-2.1.0.tar.gz + '3689262976b873d65ffce4c89a5dc8ef5731914a5b71eadacba244750fc6b7ae', # BerkeleyGW-2.1.0_missing_file.patch + '340bb854ae78cf5a1ce7b277f1c16dc3140ef9dbc39715082097b632858ef633', # BerkeleyGW-2.1.0_tests.patch +] + +dependencies = [ + ('ELPA', '2019.11.001'), + ('Python', '3.8.6'), + ('h5py', '2.10.0', versionsuffix), +] + +# two tests failing (Si-EPM_subspace_cplx) with the intel toolchain, a few more if on skylake +runtest = False + +moduleclass = 'phys' diff --git a/b/BerkeleyGW/BerkeleyGW-2.1.0_missing_file.patch b/b/BerkeleyGW/BerkeleyGW-2.1.0_missing_file.patch new file mode 100644 index 00000000..7fa12e0d --- /dev/null +++ b/b/BerkeleyGW/BerkeleyGW-2.1.0_missing_file.patch @@ -0,0 +1,13 @@ +* manual.html is missing from the distribution +author: Miguel Dias Costa (National University of Singapore) +--- Makefile.orig 2018-06-18 12:12:48.081168468 +0800 ++++ Makefile 2018-06-18 12:13:02.795191541 +0800 +@@ -124,7 +124,7 @@ + # install cannot work on a whole directory + cp -rf examples $(INSTDIR)/share/BerkeleyGW/ + cp -rf testsuite $(INSTDIR)/share/BerkeleyGW/ +- install manual.html $(INSTDIR)/share/BerkeleyGW/ ++ #install manual.html $(INSTDIR)/share/BerkeleyGW/ + else + $(error Error: Please define installation prefix INSTDIR via 'make install INSTDIR='.) + endif diff --git a/b/BerkeleyGW/BerkeleyGW-2.1.0_tests.patch b/b/BerkeleyGW/BerkeleyGW-2.1.0_tests.patch new file mode 100644 index 00000000..c2ed8e4f --- /dev/null +++ b/b/BerkeleyGW/BerkeleyGW-2.1.0_tests.patch @@ -0,0 +1,42 @@ +* enable parallel tests +* allow test scripts to inherit environment +* slightly raise tolerance in one test +author: Miguel Dias Costa (National University of Singapore) +--- Makefile.orig 2019-07-23 17:40:16.489733901 +0800 ++++ Makefile 2019-07-23 17:40:33.656497133 +0800 +@@ -157,7 +157,7 @@ + endif + + check: all +- cd testsuite && $(MAKE) check ++ cd testsuite && $(MAKE) check && $(MAKE) check-parallel + + check-save: all + cd testsuite && $(MAKE) check-save +--- testsuite/run_testsuite.sh.orig 2019-07-25 14:48:12.000000000 +0800 ++++ testsuite/run_testsuite.sh 2019-07-25 14:47:50.000000000 +0800 +@@ -1,4 +1,4 @@ +-#!/bin/bash -l ++#!/bin/bash + # + # Copyright (C) 2005-2009 Heiko Appel, David Strubbe + # +--- MeanField/Utilities/mf_convert_wrapper.sh.orig 2019-07-26 09:52:27.648341000 +0800 ++++ MeanField/Utilities/mf_convert_wrapper.sh 2019-07-26 09:52:39.922114228 +0800 +@@ -1,4 +1,4 @@ +-#!/bin/bash -l ++#!/bin/bash + + # David Strubbe, October 2010 + # Wrapper for mf_convert.x +--- testsuite/GaAs-EPM/GaAs.test.orig 2019-07-26 10:45:19.798520000 +0800 ++++ testsuite/GaAs-EPM/GaAs.test 2019-07-26 10:45:37.753775275 +0800 +@@ -32,7 +32,7 @@ + Output : WFN.out + Input : WFN.in PIPE + +-Precision : 8e-15 ++Precision : 9e-15 + match ; Eigenvalue 1 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 1); -0.2710614199849328 + match ; Eigenvalue 10 at k-pt 1 ; GREP(WFN.out, "kpoint 1", 2, 10); 1.2565373697755460 + match ; Eigenvalue 18 at k-pt 2 ; GREP(WFN.out, "kpoint 2", 2, 18); 2.1322637363008994 diff --git a/b/Bison/Bison-3.7.6-GCCcore-10.2.0.eb b/b/Bison/Bison-3.7.6-GCCcore-10.2.0.eb new file mode 100644 index 00000000..384fd3ff --- /dev/null +++ b/b/Bison/Bison-3.7.6-GCCcore-10.2.0.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'Bison' +version = '3.7.6' + +homepage = 'https://www.gnu.org/software/bison' +description = """Bison is a general-purpose parser generator that converts an annotated context-free grammar + into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables.""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +# checksums = ['1dd952839cf0d5a8178c691eeae40dc48fa50d18dcce648b1ad9ae0195367d13'] + +builddependencies = [ + ('M4', '1.4.18'), + # use same binutils version that was used when building GCCcore toolchain + ('binutils', '2.35', '', True), +] + + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['bison', 'yacc']] + [('lib/liby.a', 'lib64/liby.a')], + 'dirs': [], +} + +moduleclass = 'lang' diff --git a/b/bwidget/bwidget-1.9.14-GCCcore-10.2.0.eb b/b/bwidget/bwidget-1.9.14-GCCcore-10.2.0.eb new file mode 100644 index 00000000..f0695039 --- /dev/null +++ b/b/bwidget/bwidget-1.9.14-GCCcore-10.2.0.eb @@ -0,0 +1,26 @@ +easyblock = 'Tarball' + +name = 'bwidget' +version = '1.9.14' + +homepage = 'https://core.tcl-lang.org/bwidget/home' +description = 'The BWidget Toolkit is a high-level Widget Set for Tcl/Tk built using native Tcl/Tk 8.x namespaces.' + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +source_urls = ['https://downloads.sourceforge.net/project/tcllib/BWidget/%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['8e9692140167161877601445e7a5b9da5bb738ce8d08ee99b016629bc784a672'] + +builddependencies = [('binutils', '2.35')] + +dependencies = [('Tk', '8.6.11')] + +modextrapaths = {'TCLLIBPATH': '.'} + +sanity_check_paths = { + 'files': ['button.tcl'], + 'dirs': ['BWman'], +} + +moduleclass = 'vis' diff --git a/c/CMake/CMake-3.18.4.eb b/c/CMake/CMake-3.18.4.eb new file mode 100644 index 00000000..6421d0d1 --- /dev/null +++ b/c/CMake/CMake-3.18.4.eb @@ -0,0 +1,33 @@ +# IT4Innovations 2021 +# LK + +name = 'CMake' +version = '3.18.4' + +homepage = 'https://www.cmake.org' + +description = """ + CMake, the cross-platform, open-source build system. CMake is a family of + tools designed to build, test and package software. +""" + +toolchain = SYSTEM + +source_urls = ['https://www.cmake.org/files/v%(version_major_minor)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['597c61358e6a92ecbfad42a9b5321ddd801fc7e7eca08441307c9138382d4f77'] + +dependencies = [ + ('ncurses', '6.2'), + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), + ('cURL', '7.72.0'), + ('libarchive', '3.4.3'), + # OS dependency should be preferred if the os version is more recent then this version, + # it's nice to have an up to date openssl for security reasons + # ('OpenSSL', '1.1.1h'), +] + +osdependencies = [OS_PKG_OPENSSL_DEV] + +moduleclass = 'devel' diff --git a/c/cURL/cURL-7.72.0.eb b/c/cURL/cURL-7.72.0.eb new file mode 100644 index 00000000..40e752c8 --- /dev/null +++ b/c/cURL/cURL-7.72.0.eb @@ -0,0 +1,46 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'cURL' +version = '7.72.0' + +homepage = 'https://curl.haxx.se' + +description = """ + libcurl is a free and easy-to-use client-side URL transfer library, + supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, + LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP. + libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP + form based upload, proxies, cookies, user+password authentication (Basic, + Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling + and more. +""" + +toolchain = SYSTEM + +source_urls = ['https://curl.haxx.se/download/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d4d5899a3868fbb6ae1856c3e55a32ce35913de3956d1973caccd37bd0174fa2'] + +dependencies = [ + ('zlib', '1.2.11'), + # OS dependency should be preferred if the os version is more recent then this version, + # it's nice to have an up to date openssl for security reasons + # ('OpenSSL', '1.1.1h') +] + +osdependencies = [OS_PKG_OPENSSL_DEV] + +configopts = '--with-zlib' +# configopts += '--with-ssl=$EBROOTOPENSSL' + +modextravars = {'CURL_INCLUDES': '%(installdir)s/include'} + +sanity_check_paths = { + 'files': ['bin/curl', 'lib/libcurl.a', 'lib/libcurl.%s' % SHLIB_EXT], + 'dirs': ['lib/pkgconfig', 'include/curl'], +} + +moduleclass = 'tools' diff --git a/d/DFTB+/DFTB+-21.1-intel-2020a-Python-3.8.2.eb b/d/DFTB+/DFTB+-21.1-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000..47d76efb --- /dev/null +++ b/d/DFTB+/DFTB+-21.1-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,72 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'CMakeMake' + +name = 'DFTB+' +version = '21.1' +versionsuffix = '-Python-%(pyver)s' + +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': '2020a'} +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'), + }, +] + +builddependencies = [ + ('CMake', '3.16.4'), +] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('arpack-ng', '3.5.0'), + ('dftd3-lib', '0.9', '', ('GCC', '9.3.0')), +] + +# Link to Arpack and OpenBLAS from EB +local_makeopts = ' 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"' + +buildopts = local_makeopts + +installopts = 'INSTALLDIR="%(installdir)s"' + +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' diff --git a/d/DFTB+/DFTB+-21.1-intel-2020b-Python-3.8.6.eb b/d/DFTB+/DFTB+-21.1-intel-2020b-Python-3.8.6.eb new file mode 100644 index 00000000..5db65cc7 --- /dev/null +++ b/d/DFTB+/DFTB+-21.1-intel-2020b-Python-3.8.6.eb @@ -0,0 +1,74 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'CMakeMake' + +name = 'DFTB+' +version = '21.1' +versionsuffix = '-Python-%(pyver)s' + +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': '2020b'} +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'), + }, +] + +builddependencies = [ + ('CMake', '3.18.4'), +] + +dependencies = [ + ('Python', '3.8.6'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('arpack-ng', '3.8.0'), + ('dftd3-lib', '0.9.2', '', ('GCC', '10.2.0')), +] + +# Link to Arpack +local_makeopts = ' 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"' + +buildopts = local_makeopts + +#runtest = 'test' + local_makeopts + +installopts = 'INSTALLDIR="%(installdir)s"' + +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' diff --git a/d/DFTB+/config.cmake-MANUAL-INSTALATION.patch b/d/DFTB+/config.cmake-MANUAL-INSTALATION.patch new file mode 100644 index 00000000..fbbb2fea --- /dev/null +++ b/d/DFTB+/config.cmake-MANUAL-INSTALATION.patch @@ -0,0 +1,133 @@ +# +# Global architecture independent build settings +# + +#set(CMAKE_BUILD_TYPE "Debug" CACHE STRING "Build type (Release|RelWithDebInfo|Debug|MinSizeRel)") +# CMAKE_BUILD_TYPE is commented out in order to allow for multi-configuration builds. It will +# automatically default to RelWithDebInfo if used in a single configuration build. Uncomment or +# override it only if you want a non-default single configuration build. + +option(WITH_OMP "Whether OpenMP thread parallisation should be enabled" TRUE) + +option(WITH_MPI "Whether DFTB+ should support MPI-parallelism" FALSE) +# If you build an MPI-parallised binary, consider to set WITH_OMP (OpenMP thread parallelisaton) to +# FALSE unless you want hybrid parallelisation (for experts only). + +option(WITH_ELSI "Whether DFTB+ with MPI-parallelism should use the ELSI libraries" FALSE) +# Works only with MPI-parallel build. + +option(WITH_GPU "Whether DFTB+ should support GPU-acceleration via the MAGMA-library" FALSE) + +option(WITH_TRANSPORT "Whether transport via libNEGF should be included." TRUE) +# Works only when building static libraries (see option BUILD_SHARED_LIBS) + +option(WITH_POISSON "Whether the Poisson-solver should be included" ${WITH_TRANSPORT}) +# The Poisson-solver is mostly used in transport calculations only. Enable this option +# if you want to use it in a non-transport build. Note, the Poisson-solver is not +# multi-instance safe and is therefore not allowed, if WITH_API (see below) is on. + +option(WITH_SOCKETS "Whether socket communication should be allowed for" FALSE) + +option(WITH_ARPACK "Whether the ARPACK library should be included (needed for TD-DFTB)" TRUE) +# Works only with non-MPI (serial) build, needed for Casida linear response + +option(WITH_DFTD3 "Whether the DFTD3 library should be included" TRUE) +# NOTE: Due to the license of the DFTD3 library, the combined code must be distributed under the +# GPLv3 license (as opposed to the LGPLv3 license of the DFTB+ package) + +option(WITH_MBD "Whether DFTB+ should be built with many-body-dispersion support" FALSE) + +option(WITH_PLUMED "Whether metadynamics via the PLUMED2 library should be allowed for" FALSE) + +option(WITH_API "Whether public API should be included and the DFTB+ library installed" FALSE) +# Turn this on, if you want to use the DFTB+ library to integrate DFTB+ into other software +# packages. (Otherwise only a stripped down version of the library without the public API is built.) +# This will also install necessary include and module files and further libraries needed to link the +# DFTB+ library. + +option(INSTANCE_SAFE_BUILD "Whether build should support concurrent DFTB+ instances" FALSE) +# Turn this on, if you want to create multiple concurrent DFTB+ instances **within one process** via +# the API. This option will ensure that only components without writable global variables are +# included in the build, so that multiple instances can safely coexist. There are components +# (e.g. Poisson, DFTD-D3, ARPACK) which can not be included if this option is on. Note, this option +# is not relevant for the standalone DFTB+ binary, only for the API (if WITH_API had been turned +# on). + +option(WITH_PYTHON "Whether the Python components of DFTB+ should be tested and installed" TRUE) + +option(BUILD_SHARED_LIBS "Whether the libraries built should be shared" FALSE) +# Turn this on, if the DFTB+ library (and other compiled libraries) should be shared libraries and +# dynamically linked to their applications. This results in smaller applications, but the libraries +# must be present at run-time (and the correct LD_LIBRARY_PATH environment variable must be set, so +# that they can be found by the operating system). If you want use the DFTB+ library from other +# software packages (see WITH_API option above), they may also require a shared library (e.g. +# calling DFTB+ functions from Python or Julia). + + +# +# Test environment settings +# +set(TEST_MPI_PROCS "1" CACHE STRING "Nr. of MPI processes used for testing") + +set(TEST_OMP_THREADS "1" CACHE STRING "Nr. of OpenMP-threads used for testing") + +# Command line used to launch the test code. +# The escaped variables (\${VARIABLE}) will be substituted by the corresponding CMake variables. +if(WITH_MPI) + set(TEST_RUNNER_TEMPLATE "env OMP_NUM_THREADS=\${TEST_OMP_THREADS} mpiexec -n \${TEST_MPI_PROCS}" + CACHE STRING "How to run the tests") +else() + set(TEST_RUNNER_TEMPLATE "env OMP_NUM_THREADS=\${TEST_OMP_THREADS}" CACHE STRING + "How to run the tests") + set(MODES_RUNNER_TEMPLATE "env OMP_NUM_THREADS=\${TEST_OMP_THREADS}" CACHE STRING + "How to run the modes code for tests") +endif() + +# Turn it on to include the unit tests (needes FyTest) +option(WITH_UNIT_TESTS "Whether the unit tests should be built" FALSE) + + +# +# Installation options +# +set(CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR}/_install" CACHE STRING + "Directory to install the compiled code into") + +set(INSTALL_INCLUDEDIR "dftbplus" CACHE PATH + "Name of the project specific sub-folder within the install folder for include files") + +set(INSTALL_MODULEDIR "${INSTALL_INCLUDEDIR}/modfiles" CACHE PATH + "Installation directory for Fortran module files (within the install folder for include files)") + +set(PKGCONFIG_LANGUAGE "Fortran" CACHE STRING + "Compiler and Linker language to assume when creating the pkg-config export file (C or Fortran)") +# The pkg-config export file (lib/pkgconfig/dftbplus.pc) contains the compiler and linker options +# needed to link the DFTB+ library to an application. (It can be queried with the pkg-config tool.) +# Depending on the language setting ("C" or "Fortran") you would get the flags for the case of using +# that compiler for the linking. + + +# +# Advanced options (e.g. for developers and packagers) +# + +#set(TOOLCHAIN "gnu" CACHE STRING "Prefix of the toolchain file to be read from the sys/ folder") +# Uncomment and set it if you want to override the automatic, compiler based toolchain file +# selection. + + +set(HYBRID_CONFIG_METHODS "Submodule;Find;Fetch" CACHE STRING + "Configuration methods to try in order to satisfy hybrid dependencies") +# +# This list can be used to control how hybrid dependencies (external dependencies which can +# optionally be built during the build process) are configured. The listed methods are applied in +# the specified order. Following methods are available: +# +# Submodule: Use the source in external/*/origin and build the dependency as part of the build +# process. If the source is not present, try to retrieve it via the 'git submodule' command +# (provided the source tree is a git repository and git is available) +# +# Find: Find the dependency as an already installed package in the system. +# +# Fetch: Fetch the source into the build folder and build the dependency as part of the build +# process (works also in cases where the source tree is not a Git repository) diff --git a/d/dftd3-lib/dftd3-lib-0.9.2-GCC-10.2.0.eb b/d/dftd3-lib/dftd3-lib-0.9.2-GCC-10.2.0.eb new file mode 100644 index 00000000..e8e7d186 --- /dev/null +++ b/d/dftd3-lib/dftd3-lib-0.9.2-GCC-10.2.0.eb @@ -0,0 +1,38 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'MakeCp' + +name = 'dftd3-lib' +version = '0.9.2' + +homepage = 'https://github.com/dftbplus/dftd3-lib' +description = """This is a repackaged version of the DFTD3 program by S. Grimme and his coworkers. +The original program (V3.1 Rev 1) was downloaded at 2016-04-03. It has been +converted to free format and encapsulated into modules.""" + +toolchain = {'name': 'GCC', 'version': '10.2.0'} +toolchainopts = {'pic': True} + +github_account = 'dftbplus' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +patches = ['dftd3-lib-%(version)s_fix-extras-syntax.patch'] + +parallel = 1 + +buildopts = 'FC="$FC" FCFLAGS="$FCFLAGS" LNFLAGS="$LDFLAGS"' + +files_to_copy = [ + (['prg/dftd3', 'test/testapi'], 'bin'), + (['lib/libdftd3.a'], 'lib'), + (['lib/*.mod', 'prg/*.mod'], 'include'), + (['doc/man.pdf', 'CHANGELOG.rst', 'LICENSE', 'README.rst'], 'share'), +] + +sanity_check_paths = { + 'files': ['bin/dftd3', 'bin/testapi', 'lib/libdftd3.a'], + 'dirs': ['include', 'share'], +} + +moduleclass = 'chem' diff --git a/d/dftd3-lib/dftd3-lib-0.9.2_fix-extras-syntax.patch b/d/dftd3-lib/dftd3-lib-0.9.2_fix-extras-syntax.patch new file mode 100644 index 00000000..cc64d8b4 --- /dev/null +++ b/d/dftd3-lib/dftd3-lib-0.9.2_fix-extras-syntax.patch @@ -0,0 +1,22 @@ +Fix syntax of extras.f90 +Author: Alex Domingo (Vrije Universiteit Brussel) +--- prg/extras.f90.orig 2020-04-07 15:53:37.579346000 +0200 ++++ prg/extras.f90 2020-04-07 15:53:47.270025090 +0200 +@@ -285,7 +285,7 @@ + close(11) + + write(*,*) 'checksum (Edisp) ',check +- if (abs(check-etot).gt.1.d-3)stop'something is weired in adisp' ++ if (abs(check-etot).gt.1.d-3) stop 'something is weired in adisp' + + inquire(file='fragment',exist=ex) + if (.not.ex) return +@@ -1746,7 +1746,7 @@ + close(11) + + write(*,*) 'checksum (Edisp) ',check +- if (abs(check-etot).gt.1.d-3)stop'something is weired in adisp' ++ if (abs(check-etot).gt.1.d-3) stop 'something is weired in adisp' + + deallocate(dist,li) + return diff --git a/e/ELPA/ELPA-2019.11.001-intel-2020b.eb b/e/ELPA/ELPA-2019.11.001-intel-2020b.eb new file mode 100644 index 00000000..fefe7ac4 --- /dev/null +++ b/e/ELPA/ELPA-2019.11.001-intel-2020b.eb @@ -0,0 +1,28 @@ +# IT4Innovations 2021 +# LK + +name = 'ELPA' +version = '2019.11.001' + +homepage = 'http://elpa.rzg.mpg.de' +description = """Eigenvalue SoLvers for Petaflop-Applications .""" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = ['http://elpa.mpcdf.mpg.de/html/Releases/%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] + +preconfigopts = "export FC='mpiifort' && " +preconfigopts += "export CC='mpicc' && " +preconfigopts += 'export FCFLAGS="-O3 -xAVX2" && ' +preconfigopts += 'export CFLAGS="-O3 -march=native -mavx2 -mfma -funsafe-loop-optimizations -funsafe-math-optimizations -ftree-vect-loop-version -ftree-vectorize" && ' +preconfigopts += 'export SCALAPACK_LDFLAG=S"-L$MKLROOT/lib/intel64 -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread " && ' +preconfigopts += 'export SCALAPACK_FCFLAGS="-I$MKL_HOME/include/intel64/lp64" && ' +configopts = '--enable-option-checking=fatal' + +builddependencies = [ + ('Autotools', '20200321'), +] + +moduleclass = 'math' diff --git a/g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.0.eb b/g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.0.eb new file mode 100644 index 00000000..bb37020e --- /dev/null +++ b/g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.0.eb @@ -0,0 +1,59 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'GDRCopy' +version = '2.1' +versionsuffix = '-CUDA-11.2.0' + +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.2'} +toolchainopts = {'pic': True} + +github_account = 'NVIDIA' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['cecc7dcc071107f77396f5553c9109790b6d2298ae29eb2dbbdd52b2a213e4ea'] + +builddependencies = [ + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Check', '0.15.2'), + ('CUDAcore', '11.2.0', '', 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' diff --git a/g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.2.eb b/g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.2.eb new file mode 100644 index 00000000..7eb16fe5 --- /dev/null +++ b/g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.2.2.eb @@ -0,0 +1,59 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'GDRCopy' +version = '2.1' +versionsuffix = '-CUDA-11.2.2' + +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.2'} +toolchainopts = {'pic': True} + +github_account = 'NVIDIA' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['cecc7dcc071107f77396f5553c9109790b6d2298ae29eb2dbbdd52b2a213e4ea'] + +builddependencies = [ + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Check', '0.15.2'), + ('CUDAcore', '11.2.2', '', 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' diff --git a/g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.3.0.eb b/g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.3.0.eb new file mode 100644 index 00000000..703e79f4 --- /dev/null +++ b/g/GDRCopy/GDRCopy-2.1-NVHPC-21.2-CUDA-11.3.0.eb @@ -0,0 +1,59 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'GDRCopy' +version = '2.1' +versionsuffix = '-CUDA-11.3.0' + +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.2'} +toolchainopts = {'pic': True} + +github_account = 'NVIDIA' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['cecc7dcc071107f77396f5553c9109790b6d2298ae29eb2dbbdd52b2a213e4ea'] + +builddependencies = [ + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Check', '0.15.2'), + ('CUDAcore', '11.3.0', '', 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' diff --git a/g/git/git-2.31.1.eb b/g/git/git-2.31.1.eb new file mode 100644 index 00000000..5db43234 --- /dev/null +++ b/g/git/git-2.31.1.eb @@ -0,0 +1,29 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'git' +version = "2.31.1" + +homepage = 'http://git-scm.com/' +description = """Git is a free and open source distributed version control system designed +to handle everything from small to very large projects with speed and efficiency.""" + +toolchain = SYSTEM + +source_urls = ['https://www.kernel.org/pub/software/scm/git/'] +sources = ['%(name)s-%(version)s.tar.gz'] + +builddependencies = [ + ('Autoconf', '2.69', '', True) +] + +preconfigopts = 'make configure && ' + +sanity_check_paths = { + 'files': ['bin/git'], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/h/HDF5/HDF5-1.10.6-iimpi-2020a.eb b/h/HDF5/HDF5-1.10.6-iimpi-2020a.eb new file mode 100644 index 00000000..02c79f05 --- /dev/null +++ b/h/HDF5/HDF5-1.10.6-iimpi-2020a.eb @@ -0,0 +1,31 @@ +# IT4Innpvations 2021 +# LK + +name = 'HDF5' +version = '1.10.6' + +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': '2020a'} +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 = ['5f9a3ee85db4ea1d3b1fa9159352aebc2af72732fc2f58c96a3f0768dba0e9aa'] + +dependencies = [ + ('zlib', '1.2.11'), + ('Szip', '2.1.1'), +] + +# 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|-avx2|g' -i $i; done < <(grep xHost %(builddir)s -R | cut -d ':' -f 1 | sort -u) && " + +configopts = '--enable-fortran --enable-fortran 2003 --enable-cxx' + +moduleclass = 'data' diff --git a/h/HDF5/HDF5-1.10.6-iimpi-2020b.eb b/h/HDF5/HDF5-1.10.6-iimpi-2020b.eb new file mode 100644 index 00000000..9361915b --- /dev/null +++ b/h/HDF5/HDF5-1.10.6-iimpi-2020b.eb @@ -0,0 +1,24 @@ +# IT4Innovations 2021 +# LK + +name = 'HDF5' +version = '1.10.6' + +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': '2020b'} +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 = ['5f9a3ee85db4ea1d3b1fa9159352aebc2af72732fc2f58c96a3f0768dba0e9aa'] + +dependencies = [ + ('zlib', '1.2.11'), + ('Szip', '2.1.1'), +] + +moduleclass = 'data' diff --git a/h/HDF5/HDF5-1.10.6-intel-2020a-parallel.eb b/h/HDF5/HDF5-1.10.6-intel-2020a-parallel.eb index c08aa328..665ce86e 100644 --- a/h/HDF5/HDF5-1.10.6-intel-2020a-parallel.eb +++ b/h/HDF5/HDF5-1.10.6-intel-2020a-parallel.eb @@ -15,6 +15,11 @@ source_urls = [ 'https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] sources = [SOURCELOWER_TAR_GZ] +# 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|-avx2|g' -i $i; done < <(grep xHost %(builddir)s -R | cut -d ':' -f 1 | sort -u) && " + configopts = '--enable-fortran --enable-fortran 2003 --enable-cxx' dependencies = [ diff --git a/h/HDF5/HDF5-1.10.6-intel-2020a.eb b/h/HDF5/HDF5-1.10.6-intel-2020a.eb index 45bc33f0..3f1e3487 100644 --- a/h/HDF5/HDF5-1.10.6-intel-2020a.eb +++ b/h/HDF5/HDF5-1.10.6-intel-2020a.eb @@ -19,6 +19,11 @@ dependencies = [ ('Szip', '2.1.1'), ] -configopts = '--enable-fortran --enable-fortran 2003 --enable-fortran2003 --enable-cxx' +configopts = '--enable-fortran --enable-fortran 2003 --enable-fortran2003 --enable-cxx ' + +# 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|-avx2|g' -i $i; done < <(grep xHost %(builddir)s -R | cut -d ':' -f 1 | sort -u) && " moduleclass = 'data' diff --git a/h/h5py/h5py-2.10.0-intel-2020b-Python-3.8.6.eb b/h/h5py/h5py-2.10.0-intel-2020b-Python-3.8.6.eb new file mode 100644 index 00000000..c8f72709 --- /dev/null +++ b/h/h5py/h5py-2.10.0-intel-2020b-Python-3.8.6.eb @@ -0,0 +1,40 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'PythonPackage' + +name = 'h5py' +version = '2.10.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.h5py.org/' +description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, + version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous + amounts of data.""" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'usempi': True} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +#patches = ['h5py-%(version)s_avoid-mpi-init.patch'] +#checksums = [ +# '84412798925dc870ffd7107f045d7659e60f5d46d1c70c700375248bf6bf512d', # h5py-2.10.0.tar.gz +# '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +#] + +builddependencies = [('pkgconfig', '1.5.1', versionsuffix)] + +dependencies = [ + ('Python', '3.8.6'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('HDF5', '1.10.6', '', ('iimpi', '2020b')), +] + +use_pip = False +download_dep_fail = True + +# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip +prebuildopts = 'python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' + +moduleclass = 'data' diff --git a/h/hypothesis/hypothesis-6.13.1-GCC-10.2.0.eb b/h/hypothesis/hypothesis-6.13.1-GCC-10.2.0.eb new file mode 100644 index 00000000..07e856c1 --- /dev/null +++ b/h/hypothesis/hypothesis-6.13.1-GCC-10.2.0.eb @@ -0,0 +1,25 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'PythonPackage' + +name = 'hypothesis' +version = '6.13.1' + +homepage = "https://github.com/HypothesisWorks/hypothesis" +description = """Hypothesis is an advanced testing library for Python. It lets you write tests which are parametrized + by a source of examples, and then generates simple and comprehensible examples that make your tests fail. This lets + you find more bugs in your code with less work.""" + +toolchain = {'name': 'GCC', 'version': '10.2.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['074e27e514b305ba0b0c6bc0037faad1abbe2ea641ab4a8ec90e12a5e3238009'] + +dependencies = [('Python', '3.8.6')] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/i/iimpi/iimpi-2020a.eb b/i/iimpi/iimpi-2020a.eb new file mode 100644 index 00000000..8e55d266 --- /dev/null +++ b/i/iimpi/iimpi-2020a.eb @@ -0,0 +1,20 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'Toolchain' + +name = 'iimpi' +version = '2020a' + +homepage = 'https://software.intel.com/parallel-studio-xe' +description = """Intel C/C++ and Fortran compilers, alongside Intel MPI.""" + +toolchain = SYSTEM + +local_compver = '2020.1.217' +dependencies = [ + ('iccifort', local_compver), + ('impi', '2019.9.304', '', ('iccifort', local_compver)), +] + +moduleclass = 'toolchain' diff --git a/i/impi/impi-2018.4.274-iccifort-2019.1.144-GCC-8.2.0-2.31.1.eb b/i/impi/impi-2018.4.274-iccifort-2019.1.144-GCC-8.2.0-2.31.1.eb new file mode 100644 index 00000000..cfb90778 --- /dev/null +++ b/i/impi/impi-2018.4.274-iccifort-2019.1.144-GCC-8.2.0-2.31.1.eb @@ -0,0 +1,38 @@ +# IT4Innovations 2021 +# LK + +name = 'impi' +version = '2018.4.274' + +homepage = 'https://software.intel.com/en-us/intel-mpi-library/' +description = "Intel MPI Library, compatible with MPICH ABI" + +toolchain = {'name': 'iccifort', 'version': '2019.1.144-GCC-8.2.0-2.31.1'} + +source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/13651/'] +sources = ['l_mpi_%(version)s.tgz'] +checksums = ['a1114b3eb4149c2f108964b83cad02150d619e50032059d119ac4ffc9d5dd8e0'] + +dontcreateinstalldir = True + +components = ['intel-mpi', 'intel-psxe', 'intel-imb'] + +dependencies = [ + # needed by libfabric provider MLX introduced in Intel MPI v2019.6, + # https://software.intel.com/en-us/articles/improve-performance-and-stability-with-intel-mpi-library-on-infiniband + ('UCX', '1.9.0'), +] + +# set up all the mpi commands to default to intel compilers +# set_mpi_wrappers_all = True + +postinstallcmds = [ + 'ln -s %(installdir)s/lib64/libmpi.so %(installdir)s/lib64/libmpich.so', + 'ln -s %(installdir)s/lib64/libmpigc4.so %(installdir)s/lib64/libmpichcxx.so', + 'ln -s %(installdir)s/lib64/libmpigf.so %(installdir)s/lib64/libfmpich.so', + 'ln -s %(installdir)s/lib64/libmpigf.so %(installdir)s/lib64/libmpichf90.so', + 'ln -s %(installdir)s/lib64/libmpi.so %(installdir)s/lib64/libmpl.so', + 'ln -s %(installdir)s/lib64/libmpi.so %(installdir)s/lib64/libopa.so' +] + +moduleclass = 'mpi' diff --git a/i/impi/impi-2019.9.304-iccifort-2020.1.217.eb b/i/impi/impi-2019.9.304-iccifort-2020.1.217.eb new file mode 100644 index 00000000..ff71f030 --- /dev/null +++ b/i/impi/impi-2019.9.304-iccifort-2020.1.217.eb @@ -0,0 +1,35 @@ +# IT4Innovations 2021 +# LK + +name = 'impi' +version = '2019.9.304' + +homepage = 'https://software.intel.com/en-us/intel-mpi-library/' +description = "Intel MPI Library, compatible with MPICH ABI" + +toolchain = {'name': 'iccifort', 'version': '2020.1.217'} + +source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/17263/'] +sources = ['l_mpi_%(version)s.tgz'] +checksums = ['618a5dc2de54306645e6428c5eb7d267b54b11b5a83dfbcad7d0f9e0d90bb2e7'] + +dependencies = [ + # needed by libfabric provider MLX introduced in Intel MPI v2019.6, + # https://software.intel.com/en-us/articles/improve-performance-and-stability-with-intel-mpi-library-on-infiniband + ('UCX', '1.9.0'), +] + +dontcreateinstalldir = True + +components = ['intel-mpi', 'intel-psxe', 'intel-imb'] + +# set up all the mpi commands to default to intel compilers +set_mpi_wrappers_all = True + +import os +if os.environ.get("CLUSTERNAME") in ["BARBORA"]: + modextravars = {'I_MPI_OFI_PROVIDER': 'MLX', + 'FI_PROVIDER': 'verbs', + } + +moduleclass = 'mpi' diff --git a/i/impi/impi-2021.2.0-intel-compilers-2021.2.0.eb b/i/impi/impi-2021.2.0-intel-compilers-2021.2.0.eb new file mode 100644 index 00000000..17b84017 --- /dev/null +++ b/i/impi/impi-2021.2.0-intel-compilers-2021.2.0.eb @@ -0,0 +1,29 @@ +# IT4Innovatios 2021 +# LK + +name = 'impi' +version = '2021.2.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/mpi-library.html' +description = "Intel MPI Library, compatible with MPICH ABI" + +toolchain = {'name': 'intel-compilers', 'version': '2021.2.0'} + +# see https://software.intel.com/content/www/us/en/develop/articles/oneapi-standalone-components.html +source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/17729/'] +sources = ['l_mpi_oneapi_p_%(version)s.215_offline.sh'] +checksums = ['d0d4cdd11edaff2e7285e38f537defccff38e37a3067c02f4af43a3629ad4aa3'] + +dependencies = [('UCX', '1.10.0')] + +modextravars = { + 'I_MPI_OFI_PROVIDER': 'MLX', + 'FI_PROVIDER': 'verbs', + 'I_MPI_CC' : 'icc', + 'I_MPI_CXX': 'icpc', + 'I_MPI_F77': 'ifort', + 'I_MPI_F90': 'ifort', + 'I_MPI_FC': 'ifort', +} + +moduleclass = 'mpi' diff --git a/i/intel-compilers/intel-compilers-2021.2.0.eb b/i/intel-compilers/intel-compilers-2021.2.0.eb new file mode 100644 index 00000000..6c543722 --- /dev/null +++ b/i/intel-compilers/intel-compilers-2021.2.0.eb @@ -0,0 +1,45 @@ +# IT4Innovatios 2021 +# LK + +name = 'intel-compilers' +version = '2021.2.0' + +homepage = 'https://software.intel.com/content/www/us/en/develop/tools/oneapi/hpc-toolkit.html' +description = "Intel C, C++ & Fortran compilers (classic and oneAPI)" + +toolchain = SYSTEM + +# see https://software.intel.com/content/www/us/en/develop/articles/oneapi-standalone-components.html +sources = [ + { + 'source_urls': ['https://registrationcenter-download.intel.com/akdlm/irc_nas/17749/'], + 'filename': 'l_dpcpp-cpp-compiler_p_%(version)s.118_offline.sh', + }, + { + 'source_urls': ['https://registrationcenter-download.intel.com/akdlm/irc_nas/17756/'], + 'filename': 'l_fortran-compiler_p_%(version)s.136_offline.sh', + }, +] +checksums = [ + # l_dpcpp-cpp-compiler_p_2021.2.0.118_offline.sh + '5d01cbff1a574c3775510cd97ffddd27fdf56d06a6b0c89a826fb23da4336d59', + 'a62e04a80f6d2f05e67cd5acb03fa58857ee22c6bd581ec0651c0ccd5bdec5a1', # l_fortran-compiler_p_2021.2.0.136_offline.sh +] + +local_gccver = '10.3.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.36.1', '', ('GCCcore', local_gccver)), +] + +modextravars = { + 'CC': 'icc', + 'CXX': 'icpc', + 'F90': 'ifort', + 'F77': 'ifort', + 'FC': 'ifort', + 'OPTFLAGS': '-O3 -xHost -ip', + 'DEBUGFLAGS': '-O0 -g' +} + +moduleclass = 'compiler' diff --git a/i/intel/intel-2020a.eb b/i/intel/intel-2020a.eb new file mode 100644 index 00000000..d42bec90 --- /dev/null +++ b/i/intel/intel-2020a.eb @@ -0,0 +1,24 @@ +# IT4Innovations +# LK 2021 + +easyblock = 'Toolchain' + +name = 'intel' +version = '2020a' + +homepage = 'https://easybuild.readthedocs.io/en/master/Common-toolchains.html#intel-toolchain' +description = "Compiler toolchain including Intel compilers, Intel MPI and Intel Math Kernel Library (MKL)." + +toolchain = SYSTEM + +local_compver = '2020.1.217' +local_gccver = '9.3.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.34', '', ('GCCcore', local_gccver)), + ('iccifort', local_compver), + ('impi', '2019.9.304', '', ('iccifort', local_compver)), + ('imkl', local_compver, '', ('iimpi', version)), +] + +moduleclass = 'toolchain' diff --git a/l/libarchive/libarchive-3.4.3.eb b/l/libarchive/libarchive-3.4.3.eb new file mode 100644 index 00000000..2e9f032d --- /dev/null +++ b/l/libarchive/libarchive-3.4.3.eb @@ -0,0 +1,26 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'libarchive' +version = '3.4.3' + +homepage = 'https://www.libarchive.org/' + +description = """ + Multi-format archive and compression library +""" + +toolchain = SYSTEM + +source_urls = ['https://www.libarchive.org/downloads/'] +sources = [SOURCE_TAR_GZ] +checksums = ['ee1e749213c108cb60d53147f18c31a73d6717d7e3d2481c157e1b34c881ea39'] + +sanity_check_paths = { + 'files': ['include/archive.h', 'lib/libarchive.%s' % SHLIB_EXT], + 'dirs': ['bin', 'share/man/man3'], +} + +moduleclass = 'tools' diff --git a/m/MATLAB/MATLAB-2021a.eb b/m/MATLAB/MATLAB-2021a.eb new file mode 100644 index 00000000..3ad37429 --- /dev/null +++ b/m/MATLAB/MATLAB-2021a.eb @@ -0,0 +1,30 @@ +# IT4Innovations +# LK 2021 + +name = 'MATLAB' +version = '2021a' + +homepage = 'https://www.mathworks.com/products/matlab' +description = """MATLAB is a high-level language and interactive environment + that enables you to perform computationally intensive tasks faster than with + traditional programming languages such as C, C++, and Fortran.""" + +toolchain = SYSTEM + +sources = ['matlab-%(version)s.tar.gz'] +checksums = ['af53ba32e959c40071128e717a48495d'] + +java_options = '-Xmx2048m' + +dependencies = [('Java', '1.8.0_221')] + +# Use EB_MATLAB_KEY environment variable or uncomment and modify license key +# key = '00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000' + +# Use EB_MATLAB_LICENSE_SERVER and EB_MATLAB_LICENSE_SERVER_PORT environment variables or +# uncomment and modify the following variables for installation with floating license server +# license_file = 'my-license-file' +# license_server = 'my-license-server' +# license_server_port = '1234' + +moduleclass = 'math' diff --git a/m/MATLAB/README.md b/m/MATLAB/README.md new file mode 100644 index 00000000..c9eda018 --- /dev/null +++ b/m/MATLAB/README.md @@ -0,0 +1,36 @@ +This example uses Matlab 2018a and MATLAB-2018a.eb +Steps to install Matlab: +* Install the appropriate Java install which requires manual download. See Java documentation for install. +* Matlab needs a "File Installation Key". There are a few options available: + * Your Matlab license should have a "`File Installation Key`" in under "`Advanced Options`" in the "`Install and Activate`" tab of your "`License Center`". + This will only install the products associated with this license. + * If you need to install all of the toolboxes to support multiple licenses Mathworks can enable a "`All Product File Installation Key`". + This will install all of the client products but will not install server products like MDCS. + A second manual installation on top of the first will be required. + * If you have a server product key, like MDCS, the "`File Installation Key`" may not install client products like Matlab Compilers. + A second manual installation on top of the first will be required. +* Edit the easyconfig file (`MATLAB-2018a.eb`). + * Update the version of Java to match the version installed in step 1. + * Add the following three lines + ``` + # This string could be really long + key = 'XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX' + license_server = '' + license_server_port = '' + ``` +* Download both ISO files from Mathworks. +* Create the tar file needed for install. + ``` + $ mkdir R2018a + $ mount -o loop,ro R2018a_glnxa64_dvd1.iso /mnt/ + $ rsync -avHlP /mnt/ R2018a/ + $ umount /mnt + $ mount -o loop,ro R2018a_glnxa64_dvd2.iso /mnt/ + $ rsync -avHlP /mnt/ R2018a/ + $ umount /mnt + $ tar -zcvf /my/easybuild/download/path/matlab-2018a.tar.gz R2018a + ``` +* Install with EasyBuild + ``` + $ eb MATLAB-2018a.eb -r + ``` diff --git a/m/Molpro/Molpro-mpp-2021.1.0.linux_x86_64_openmp.eb b/m/Molpro/Molpro-mpp-2021.1.0.linux_x86_64_openmp.eb new file mode 100644 index 00000000..60f5a666 --- /dev/null +++ b/m/Molpro/Molpro-mpp-2021.1.0.linux_x86_64_openmp.eb @@ -0,0 +1,23 @@ +# IT4Innovations 2021 +# LK + +name = 'Molpro' +version = '2021.1.0' +versionprefix = 'mpp-' +versionsuffix = '.linux_x86_64_openmp' + +homepage = 'https://www.molpro.net' +description = """Molpro is a local_complete system of ab initio programs for molecular electronic structure calculations.""" + +toolchain = SYSTEM + +# no source URL available, requires registration to download +sources = ['%(namelower)s-%(versionprefix)s%(version)s%(versionsuffix)s.sh'] + +precompiled_binaries = True + +# license file - uncomment if a licence file is supplied by your site and +# is valid for all users - the value of license_file may have to be changed +# license_file = HOME + '/licenses/%(name)s/license.lic' + +moduleclass = 'chem' diff --git a/n/Newton-X/Newton-X-2.2-B09-intel-2020b.eb b/n/Newton-X/Newton-X-2.2-B09-intel-2020b.eb new file mode 100644 index 00000000..413f5323 --- /dev/null +++ b/n/Newton-X/Newton-X-2.2-B09-intel-2020b.eb @@ -0,0 +1,35 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'PackedBinary' + +name = 'Newton-X' +version = '2.2-B09' + +homepage = 'https://sourceforge.net/projects/actc' +description = "ACTC converts independent triangles into triangle strips or fans." + +toolchain = {'name': 'intel', 'version': '2020b'} + +#source_urls = [https://amubox.univ-amu.fr/s/aBMnEq7dXeZPm2H/download] +sources = ['nx-2.2-b09.tgz'] +patches = ['newton-x-2.2.patch'] + +dependencies = [ + ['GSL', '2.6'], +] + +install_cmd = 'NX-2.2-B09/install/installnx.pl ifort $EBROOTGSL %(installdir)s 0' + +sanity_check_paths = { + 'files': [ 'bin/tplot', 'bin/moldyn.pl', 'bin/plot', 'source/lib/nx_la.pm'], + 'dirs': ['bin', 'batch', 'docs', 'install', 'source', 'test-nx'], +} + +modextrapaths = { + 'NX': 'bin', + 'LIBRARY_PATH': 'source/lib', + 'LD_LIBRARY_PATH': 'source/lib' +} + +moduleclass = 'chem' diff --git a/n/Newton-X/newton-x-2.2.patch b/n/Newton-X/newton-x-2.2.patch new file mode 100644 index 00000000..2ec9ed9c --- /dev/null +++ b/n/Newton-X/newton-x-2.2.patch @@ -0,0 +1,70 @@ +--- NX-2.2-B09/install/installnx.pl.orig 2020-03-06 12:35:13.000000000 +0100 ++++ NX-2.2-B09/install/installnx.pl 2021-06-08 07:41:44.615480573 +0200 +@@ -22,7 +22,7 @@ + + # 1) Select compiler + #$comp = "ifort"; +- $comp = "gfortran"; ++ $comp = "$ARGV[0]"; + + # 2) Choose the BLAS/LAPACK variables (_OD will be used for cioverlap_od only) + if($comp eq "ifort"){ +@@ -44,8 +44,8 @@ + } + + # 3) Choose GSL paths: +- $idgsl="/usr/include/gsl"; # Headers +- $ldgsl="/usr/lib"; # Libraries ++ $idgsl="$ARGV[1]/include/gsl"; # Headers ++ $ldgsl="$ARGV[1]/lib"; # Libraries + + # 4) If necessary (usually it isn't), change the flags for the selected compiler (_OD will be used for cioverlap_od only) + if ($comp eq "ifort"){ +@@ -98,13 +98,14 @@ + #================================================================ + # + sub create_dir{ +- print STDOUT "\n Please enter directory for the NEWTON-X installation \n "; +- $_ = ; +- chomp;$_ =~ s/^\s*//;$_ =~ s/\s*$//; +- $instd = $_; ++ #print STDOUT "\n Please enter directory for the NEWTON-X installation \n "; ++ #$_ = ; ++ #chomp;$_ =~ s/^\s*//;$_ =~ s/\s*$//; ++ $instd = $ARGV[2]; + + if (!-s $instd){ +- $create_d=simple_question("\n This directory seems not to exist - create it? (y/n) ","y"); ++ #$create_d=simple_question("\n This directory seems not to exist - create it? (y/n) ","y"); ++ $create_d = "y"; + if ($create_d eq "y"){ + system("mkdir -p $instd"); + if (-s $instd){ +@@ -140,7 +141,7 @@ + print STDOUT " [4] Time-dependent overlaps I (CIOVERLAP)\n"; + print STDOUT " [5] Time-dependent overlaps II (CIOVERLAP_OD)\n"; + print STDOUT " Enter comma separated list or dash separated range ( for default): "; +- $_=; ++ $_=$ARGV[3]; + chomp;$_ =~ s/^\s*//;$_ =~ s/\s*$//; + @list=make_num_sequence($_); + if (($_ eq "") or ($_ eq "0")){ +@@ -358,12 +359,12 @@ + # + sub copy_nx{ + print_STDOUT(" Copying files "); +- copyfiles("$original_dir/../","source",$instd,1); +- copyfiles("$original_dir/../","docs",$instd,1); +- copyfiles("$original_dir/../","test-nx",$instd,1); +- copyfiles("$original_dir/../","batch",$instd,1); +- copyfiles("$original_dir/../","install",$instd,1); +- copyfiles("$original_dir/../","README.install",$instd,1); ++ copyfiles("$original_dir/NX-2.2-B09/","source",$instd,1); ++ copyfiles("$original_dir/NX-2.2-B09/","docs",$instd,1); ++ copyfiles("$original_dir/NX-2.2-B09/","test-nx",$instd,1); ++ copyfiles("$original_dir/NX-2.2-B09/","batch",$instd,1); ++ copyfiles("$original_dir/NX-2.2-B09/","install",$instd,1); ++ copyfiles("$original_dir/NX-2.2-B09/","README.install",$instd,1); + # Create bin directory + if (!-e $bin){ + system("mkdir $bin"); diff --git a/o/OpenMPI/OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.2.2.eb b/o/OpenMPI/OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.2.2.eb new file mode 100644 index 00000000..b1eea7cc --- /dev/null +++ b/o/OpenMPI/OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.2.2.eb @@ -0,0 +1,32 @@ +# IT4Innovations 2021 +# LK + +name = 'OpenMPI' +version = '4.0.5' +versionsuffix = '-CUDA-11.2.2' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'NVHPC', 'version': '21.2'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_GZ] + +dependencies = [ + ('UCX', '1.9.0', versionsuffix), + ('CUDAcore', '11.2.2', '', True), + ('GDRCopy', '2.1', 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' diff --git a/o/OpenMPI/OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.3.0.eb b/o/OpenMPI/OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.3.0.eb new file mode 100644 index 00000000..940aa206 --- /dev/null +++ b/o/OpenMPI/OpenMPI-4.0.5-NVHPC-21.2-CUDA-11.3.0.eb @@ -0,0 +1,32 @@ +# IT4Innovations 2021 +# LK + +name = 'OpenMPI' +version = '4.0.5' +versionsuffix = '-CUDA-11.3.0' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'NVHPC', 'version': '21.2'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_GZ] + +dependencies = [ + ('UCX', '1.9.0', '-CUDA-11.3.0'), + ('CUDAcore', '11.3.0', '', True), + ('GDRCopy', '2.1', '-CUDA-11.3.0'), +] + +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' diff --git a/o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0.eb b/o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0.eb new file mode 100644 index 00000000..1c66b075 --- /dev/null +++ b/o/OpenMPI/OpenMPI-4.1.1-GCC-10.2.0.eb @@ -0,0 +1,65 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'OpenMPI' +version = '4.1.1' + +homepage = 'http://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-2 implementation.""" + +toolchain = {'name': 'GCC', 'version': '10.2.0'} + +source_urls = ['https://github.com/open-mpi/ompi/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] + +dependencies = [ + ('hwloc', '2.2.0'), + ('UCX', '1.9.0',), +] + +preconfigopts = './autogen.pl && ' + +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 ' + +osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')] + +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', +] + +libs = ["mpi_mpifh", "mpi", "ompitrace", "open-pal", "open-rte"] +sanity_check_paths = { + 'files': [ + "bin/%s" % + binfile for binfile in [ + "ompi_info", "opal_wrapper", "orterun"]] + [ + "lib/lib%s.%s" % + (libfile, SHLIB_EXT) for libfile in libs] + [ + "include/%s.h" % + x for x in [ + "mpi-ext", "mpif-config", "mpif", "mpi", "mpi_portable_platform"]], 'dirs': [], } + +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' diff --git a/p/pkgconfig/pkgconfig-1.5.1-GCCcore-10.2.0-python.eb b/p/pkgconfig/pkgconfig-1.5.1-GCCcore-10.2.0-python.eb new file mode 100644 index 00000000..350505d9 --- /dev/null +++ b/p/pkgconfig/pkgconfig-1.5.1-GCCcore-10.2.0-python.eb @@ -0,0 +1,30 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'PythonPackage' + +name = 'pkgconfig' +version = '1.5.1' +versionsuffix = '-Python-3.8.6' + +homepage = 'https://github.com/matze/pkgconfig' +description = """pkgconfig is a Python module to interface with the pkg-config command line tool""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['97bfe3d981bab675d5ea3ef259045d7919c93897db7d3b59d4e8593cba8d354f'] + +builddependencies = [('binutils', '2.35')] + +dependencies = [ + ('Python', '3.8.6'), + ('pkg-config', '0.29.2'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/p/pybind11/pybind11-2.4.3-GCC-10.2.0-Python-3.8.6.eb b/p/pybind11/pybind11-2.4.3-GCC-10.2.0-Python-3.8.6.eb new file mode 100644 index 00000000..3a9454cf --- /dev/null +++ b/p/pybind11/pybind11-2.4.3-GCC-10.2.0-Python-3.8.6.eb @@ -0,0 +1,30 @@ +# IT4Innovations 2021 +# LK + +name = 'pybind11' +version = '2.4.3' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://pybind11.readthedocs.io' +description = """pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa, + mainly to create Python bindings of existing C++ code.""" + +toolchain = {'name': 'GCC', 'version': '10.2.0'} + +source_urls = ['https://github.com/pybind/pybind11/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s-fix-get-include.patch'] +checksums = [ + '1eed57bc6863190e35637290f97a20c81cfe4d9090ac0a24f3bbf08f265eb71d', # v2.4.3.tar.gz + 'b03550f05dcff97eeb3d7f4cd393b0584341ac7a310c89ee120f95e54fdc3125', # pybind11-2.4.3-fix-get-include.patch +] + +builddependencies = [ + ('CMake', '3.18.4'), + ('Eigen', '3.3.8'), +] +dependencies = [('Python', '3.8.6')] + +configopts = "-DPYTHON_EXECUTABLE=$EBROOTPYTHON/bin/python" + +moduleclass = 'lib' diff --git a/p/pybind11/pybind11-2.6.0-GCC-10.2.0-Python-3.8.6.eb b/p/pybind11/pybind11-2.6.0-GCC-10.2.0-Python-3.8.6.eb new file mode 100644 index 00000000..e54c1518 --- /dev/null +++ b/p/pybind11/pybind11-2.6.0-GCC-10.2.0-Python-3.8.6.eb @@ -0,0 +1,26 @@ +# IT4Innovations 2021 +# LK + +name = 'pybind11' +version = '2.6.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://pybind11.readthedocs.io' +description = """pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa, + mainly to create Python bindings of existing C++ code.""" + +toolchain = {'name': 'GCC', 'version': '10.2.0'} + +source_urls = ['https://github.com/pybind/pybind11/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['90b705137b69ee3b5fc655eaca66d0dc9862ea1759226f7ccd3098425ae69571'] + +builddependencies = [ + ('CMake', '3.18.4'), + ('Eigen', '3.3.8'), +] +dependencies = [('Python', '3.8.6')] + +configopts = "-DPYTHON_EXECUTABLE=$EBROOTPYTHON/bin/python" + +moduleclass = 'lib' diff --git a/s/Schrodinger/Schrodinger_2021-2_Linux-x86_64.eb b/s/Schrodinger/Schrodinger_2021-2_Linux-x86_64.eb new file mode 100644 index 00000000..5b70d1a7 --- /dev/null +++ b/s/Schrodinger/Schrodinger_2021-2_Linux-x86_64.eb @@ -0,0 +1,40 @@ +# IT4Innovations 2021 +# LK + +easyblock='Binary' + +name = "Schrodinger" +version = "2021-2" +versionsuffix = "_Linux-x86_64" + +homepage = 'http://www.schrodinger.com/' +description = """ Schrödinger aims to provide integrated software solutions and services + that truly meet its customers’ needs. We want to empower researchers around the world to + achieve their goals of improving human health and quality of life through advanced local_computational + techniques that transform the way chemists design local_compounds and materials. """ + +toolchain = SYSTEM + +#Schrodinger_Suites_2021-2_Linux-x86_64.tar +sources = ['%(name)s_Suites_%(version)s%(versionsuffix)s.tar'] + +# -d ... directory containing the install files +# -m ..................... manual mode (no automatically included modules) +# -b ..................... batch install +# -s ....... installation directory +# -k ............ scratch directory +# -t .... install directory for third-party modules +install_cmd = 'tar xfv Schrodinger_Suites_%(version)s%(versionsuffix)s.tar && ' +install_cmd += 'cd Schrodinger_Suites_%(version)s%(versionsuffix)s && ' +install_cmd += './INSTALL -d . -s %(installdir)s -k %(builddir)s -t %(installdir)s/thirdparty -b *' + +modextrapaths = {'SCHRODINGER': ''} + +modextravars = {'SCHROD_LICENSE_FILE': '/apps/licenses/Schrodinger/license.dat'} + +sanity_check_paths = { + 'files': ["maestro", "desmond" ], + 'dirs': ["thirdparty"] +} + +moduleclass = 'chem' diff --git a/s/SciPy-bundle/SciPy-bundle-2020.03-intel-2020b-Python-3.8.6.eb b/s/SciPy-bundle/SciPy-bundle-2020.03-intel-2020b-Python-3.8.6.eb new file mode 100644 index 00000000..4fb21452 --- /dev/null +++ b/s/SciPy-bundle/SciPy-bundle-2020.03-intel-2020b-Python-3.8.6.eb @@ -0,0 +1,58 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'PythonBundle' + +name = 'SciPy-bundle' +version = '2020.03' +versionsuffix = '-Python-3.8.6' + +homepage = 'https://python.org/' +description = "Bundle of Python packages for scientific software" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'pic': True, 'lowopt': True} + +dependencies = [ + ('Python', '3.8.6'), + ('pybind11', '2.6.0', '-GCC-10.2.0-Python-3.8.6', True), # required by scipy +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +# order is important! +exts_list = [ + ('numpy', '1.18.3', { + 'patches': ['numpy-1.18.2-mkl.patch'], + 'source_tmpl': '%(name)s-%(version)s.zip', + 'checksums': [ + 'e46e2384209c91996d5ec16744234d1c906ab79a701ce1a26155c9ec890b8dc8', # numpy-1.18.2.zip + 'ea25ad5c0148c1398d282f0424e642fb9815a1a80f4512659b018e2adc378bcf', # numpy-1.18.2-mkl.patch + ], + }), + ('scipy', '1.4.1', { + 'patches': ['scipy-1.4.1-fix-pthread.patch'], + 'checksums': [ + 'dee1bbf3a6c8f73b6b218cb28eed8dd13347ea2f87d572ce19b289d6fd3fbc59', # scipy-1.4.1.tar.gz + '4e2162a93caddce63a1aa2dfb6c181774a4f6615950e1d60c54bb4308fee3bb3', # scipy-1.4.1-fix-pthread.patch + ], + }), + ('mpi4py', '3.0.3', { + 'checksums': ['012d716c8b9ed1e513fcc4b18e5af16a8791f51e6d1716baccf988ad355c5a1f'], + }), + ('pandas', '1.0.3', { + 'checksums': ['32f42e322fb903d0e189a4c10b75ba70d90958cc4f66a1781ed027f1a1d14586'], + }), + ('mpmath', '1.1.0', { + 'checksums': ['fc17abe05fbab3382b61a123c398508183406fa132e0223874578e20946499f6'], + }), + ('deap', '1.3.1', { + 'checksums': ['11f54493ceb54aae10dde676577ef59fc52d52f82729d5a12c90b0813c857a2f'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lang' diff --git a/s/SciPy-bundle/SciPy-bundle-2021.05-intel-2020b.eb b/s/SciPy-bundle/SciPy-bundle-2021.05-intel-2020b.eb new file mode 100644 index 00000000..09ff82d6 --- /dev/null +++ b/s/SciPy-bundle/SciPy-bundle-2021.05-intel-2020b.eb @@ -0,0 +1,65 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'PythonBundle' + +name = 'SciPy-bundle' +version = '2021.05' + +homepage = 'https://python.org/' +description = "Bundle of Python packages for scientific software" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'pic': True, 'lowopt': True} + +builddependencies = [('hypothesis', '6.13.1', '', ('GCC', '10.2.0'))] + +dependencies = [ + ('Python', '3.8.6'), + ('pybind11', '2.6.0'), # required by scipy +] + +use_pip = True + +# order is important! +exts_list = [ + ('numpy', '1.20.3', { + 'sources': [SOURCE_ZIP], + 'patches': [ + 'numpy-1.20.3_skip-ppc-long-complex-test.patch', + 'numpy-1.20.3_xfail-test-nan.patch', + ], + 'checksums': [ + 'e55185e51b18d788e49fe8305fd73ef4470596b33fc2c1ceb304566b99c71a69', # numpy-1.20.3.zip + # numpy-1.20.3_skip-ppc-long-complex-test.patch + '2f9a12e3a352b39076db84a7622fc8f4796abd3cb7f97f71958a495e864659a4', + 'f0ce961f7d79551598e23050d92f46e827e300f6a7e5a6112e58efcc10385d4d', # numpy-1.20.3_xfail-test-nan.patch + ], + }), + ('scipy', '1.6.3', { + 'checksums': ['a75b014d3294fce26852a9d04ea27b5671d86736beb34acdfc05859246260707'], + }), + ('mpi4py', '3.0.3', { + 'checksums': ['012d716c8b9ed1e513fcc4b18e5af16a8791f51e6d1716baccf988ad355c5a1f'], + }), + ('numexpr', '2.7.3', { + 'checksums': ['43616529f9b7d1afc83386f943dc66c4da5e052f00217ba7e3ad8dd1b5f3a825'], + }), + ('Bottleneck', '1.3.2', { + 'checksums': ['20179f0b66359792ea283b69aa16366419132f3b6cf3adadc0c48e2e8118e573'], + }), + ('pandas', '1.2.4', { + 'preinstallopts': """sed -i 's@extra_compile_args = \["-Werror"\]@extra_compile_args = []@g' setup.py && """, + 'checksums': ['649ecab692fade3cbfcf967ff936496b0cfba0af00a55dfaacd82bdda5cb2279'], + }), + ('mpmath', '1.2.1', { + 'checksums': ['79ffb45cf9f4b101a807595bcb3e72e0396202e0b1d25d689134b48c4216a81a'], + }), + ('deap', '1.3.1', { + 'checksums': ['11f54493ceb54aae10dde676577ef59fc52d52f82729d5a12c90b0813c857a2f'], + }), +] + +sanity_pip_check = True + +moduleclass = 'lang' diff --git a/s/Singularity/Singularity-3.8.0.eb b/s/Singularity/Singularity-3.8.0.eb new file mode 100644 index 00000000..ee523a02 --- /dev/null +++ b/s/Singularity/Singularity-3.8.0.eb @@ -0,0 +1,46 @@ +# IT4Innovations 2020 +# LK +# 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.0' + +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' diff --git a/s/SoX/SoX-14.4.2-intel-2020b.eb b/s/SoX/SoX-14.4.2-intel-2020b.eb new file mode 100644 index 00000000..376b3bf9 --- /dev/null +++ b/s/SoX/SoX-14.4.2-intel-2020b.eb @@ -0,0 +1,22 @@ +easyblock = 'ConfigureMake' + +name = 'SoX' +version = '14.4.2' + +homepage = 'https://sourceforge.net/projects/sox' +description = """SoX is the Swiss Army Knife of sound processing utilities. It can convert audio files + to other popular audio file types and also apply sound effects and filters during the conversion.""" + +toolchain = {'name': 'intel', 'version': '2020b'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['b45f598643ffbd8e363ff24d61166ccec4836fea6d3888881b8df53e3bb55f6c'] + +sanity_check_paths = { + 'files': ['bin/play', 'bin/rec', 'bin/sox', 'bin/soxi', 'include/sox.h', + 'lib/libsox.a', 'lib/libsox.%s' % SHLIB_EXT, 'lib/pkgconfig/sox.pc'], + 'dirs': ['share/man'], +} + +moduleclass = 'tools' diff --git a/s/SoX/SoX-14.4.2.eb b/s/SoX/SoX-14.4.2.eb index 16e83678..32af840a 100644 --- a/s/SoX/SoX-14.4.2.eb +++ b/s/SoX/SoX-14.4.2.eb @@ -1,4 +1,5 @@ -# IT4Innovations 2019 +# IT4Innovations 2021 +# JK easyblock = 'ConfigureMake' diff --git a/t/Tcl/Tcl-8.6.11-GCCcore-10.2.0.eb b/t/Tcl/Tcl-8.6.11-GCCcore-10.2.0.eb new file mode 100644 index 00000000..67b21230 --- /dev/null +++ b/t/Tcl/Tcl-8.6.11-GCCcore-10.2.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'Tcl' +version = '8.6.11' + +homepage = 'https://www.tcl.tk/' + +description = """ + Tcl (Tool Command Language) is a very powerful but easy to learn dynamic + programming language, suitable for a very wide range of uses, including web + and desktop applications, networking, administration, testing and many more. +""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +source_urls = ["http://prdownloads.sourceforge.net/tcl"] +sources = ['%(namelower)s%(version)s-src.tar.gz'] +# checksums = ['ad0cd2de2c87b9ba8086b43957a0de3eb2eb565c7159d5f53ccbba3feb915f4e'] + +builddependencies = [('binutils', '2.35')] + +dependencies = [('zlib', '1.2.11')] + +configopts = '--enable-threads EXTRA_INSTALL="install-private-headers"' + +runtest = 'test' + +start_dir = 'unix' + +postinstallcmds = [ + 'ln -s %(installdir)s/bin/tclsh%(version_major)s.%(version_minor)s %(installdir)s/bin/tclsh' +] + +sanity_check_paths = { + 'files': ['bin/tclsh%(version_major)s.%(version_minor)s', 'bin/tclsh', + 'include/tcl.h', 'lib/libtcl%%(version_major)s.%%(version_minor)s.%s' % SHLIB_EXT, + 'lib/tclConfig.sh', 'man/man1/tclsh.1'], + 'dirs': ['share'], +} + +moduleclass = 'lang' diff --git a/t/Tk/Tk-8.6.11-GCCcore-10.2.0.eb b/t/Tk/Tk-8.6.11-GCCcore-10.2.0.eb new file mode 100644 index 00000000..b13e5afd --- /dev/null +++ b/t/Tk/Tk-8.6.11-GCCcore-10.2.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'Tk' +version = '8.6.11' + +homepage = 'https://www.tcl.tk/' +description = """Tk is an open source, cross-platform widget toolchain that provides a library of basic elements for + building a graphical user interface (GUI) in many different programming languages.""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +source_urls = ["https://prdownloads.sourceforge.net/tcl"] +sources = ['%(namelower)s%(version)s-src.tar.gz'] +#patches = ['Tk-8.6.4_different-prefix-with-tcl.patch'] +#checksums = [ +# 'd3f9161e8ba0f107fe8d4df1f6d3a14c30cc3512dfc12a795daa367a27660dac', # tk8.6.9-src.tar.gz +# '7a6daa8349393af3d340e774aebf07c7410c51e01bc654ceb3679877063b961d', # Tk-8.6.4_different-prefix-with-tcl.patch +#] + +builddependencies = [('binutils', '2.35')] +dependencies = [ + ('Tcl', version), + ('X11', '20201008'), + ('zlib', '1.2.11'), +] + +configopts = '--enable-threads --with-tcl=$EBROOTTCL/lib CFLAGS="-I$EBROOTTCL/include"' + +installopts = "&& make install-private-headers" + +postinstallcmds = ["ln -s wish%(version_major_minor)s %(installdir)s/bin/wish"] + +sanity_check_paths = { + 'files': ["bin/wish", "lib/tkConfig.sh", "include/tkInt.h"], + 'dirs': [], +} + +start_dir = 'unix' + +moduleclass = 'vis' diff --git a/t/Togl/Togl-2.0-GCCcore-10.2.0.eb b/t/Togl/Togl-2.0-GCCcore-10.2.0.eb new file mode 100644 index 00000000..aa385116 --- /dev/null +++ b/t/Togl/Togl-2.0-GCCcore-10.2.0.eb @@ -0,0 +1,49 @@ +# IT4Innovations 2021 +# JK, LK + +easyblock = 'ConfigureMake' + +name = 'Togl' +version = '2.0' + +homepage = 'https://sourceforge.net/projects/togl/' +description = """A Tcl/Tk widget for OpenGL rendering.""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +source_urls = ['https://downloads.sourceforge.net/project/togl/Togl/2.0/'] +sources = ['%(name)s%(version)s-src.tar.gz'] +patches = [ + 'Togl-2.0_configure.patch', + 'Togl-2.0_decl.patch', +] +checksums = [ + 'b7d4a90bbad3aca618d505ee99e7fd8fb04c829f63231dda2360f557ba3f7610', # Togl2.0-src.tar.gz + 'da97f36b60cd107444cd92453809135b14dc1e8775146b3ba0731da8002e6f9f', # Togl-2.0_configure.patch + '05db6b3ca5139f60616d074903883a3070fcfb1eb8c965b0938779b4f9a6ec6a', # Togl-2.0_decl.patch +] + +builddependencies = [('binutils', '2.35')] + +dependencies = [ + ('Mesa', '20.2.1'), + ('Tk', '8.6.11'), + ('Tcl', '8.6.11'), +] + +preconfigopts = 'export CFLAGS="$CFLAGS -DTOGL_USE_FONTS=0" && ' + +configopts = "--prefix=%(installdir)s --exec-prefix=%(installdir)s " +configopts += "--with-tcl=$EBROOTTCL/lib --with-tk=$EBROOTTK/lib" + +sanity_check_paths = { + 'files': [], + 'dirs': ['include', 'lib'], +} + +modextrapaths = { + 'LD_LIBRARY_PATH': 'lib/Togl2.0', + 'LIBRARY_PATH': 'lib/Togl2.0', +} + +moduleclass = 'vis' diff --git a/t/Togl/Togl-2.0_configure.patch b/t/Togl/Togl-2.0_configure.patch new file mode 100644 index 00000000..43859362 --- /dev/null +++ b/t/Togl/Togl-2.0_configure.patch @@ -0,0 +1,91 @@ +* remove check for tclInt.h and tkInt.h in source folder, not necessary +author: Miguel Dias Costa (National University of Singapore) +--- configure.orig 2020-05-21 15:18:49.193616492 +0800 ++++ configure 2020-05-21 15:31:31.222311056 +0800 +@@ -7190,7 +7190,7 @@ + { echo "$as_me:$LINENO: checking for Tcl private include files" >&5 + echo $ECHO_N "checking for Tcl private include files... $ECHO_C" >&6; } + +- TCL_SRC_DIR_NATIVE=`${CYGPATH} ${TCL_SRC_DIR}` ++ TCL_SRC_DIR_NATIVE=`${CYGPATH}` + TCL_TOP_DIR_NATIVE=\"${TCL_SRC_DIR_NATIVE}\" + TCL_GENERIC_DIR_NATIVE=\"${TCL_SRC_DIR_NATIVE}/generic\" + TCL_UNIX_DIR_NATIVE=\"${TCL_SRC_DIR_NATIVE}/unix\" +@@ -7217,12 +7217,12 @@ + TCL_INCLUDES="${TCL_INCLUDES} ${TCL_INCLUDE_SPEC} `echo "${TCL_INCLUDE_SPEC}" | sed -e 's/Headers/PrivateHeaders/'`"; fi + ;; + esac +- else +- if test ! -f "${TCL_SRC_DIR}/generic/tclInt.h" ; then +- { { echo "$as_me:$LINENO: error: Cannot find private header tclInt.h in ${TCL_SRC_DIR}" >&5 +-echo "$as_me: error: Cannot find private header tclInt.h in ${TCL_SRC_DIR}" >&2;} +- { (exit 1); exit 1; }; } +- fi ++# else ++# if test ! -f "${TCL_SRC_DIR}/generic/tclInt.h" ; then ++# { { echo "$as_me:$LINENO: error: Cannot find private header tclInt.h in ${TCL_SRC_DIR}" >&5 ++#echo "$as_me: error: Cannot find private header tclInt.h in ${TCL_SRC_DIR}" >&2;} ++# { (exit 1); exit 1; }; } ++# fi + fi + + +@@ -7235,8 +7235,8 @@ + + + +- { echo "$as_me:$LINENO: result: Using srcdir found in tclConfig.sh: ${TCL_SRC_DIR}" >&5 +-echo "${ECHO_T}Using srcdir found in tclConfig.sh: ${TCL_SRC_DIR}" >&6; } ++# { echo "$as_me:$LINENO: result: Using srcdir found in tclConfig.sh: ${TCL_SRC_DIR}" >&5 ++#echo "${ECHO_T}Using srcdir found in tclConfig.sh: ${TCL_SRC_DIR}" >&6; } + + + #TEA_PUBLIC_TK_HEADERS +@@ -7244,7 +7244,7 @@ + { echo "$as_me:$LINENO: checking for Tk private include files" >&5 + echo $ECHO_N "checking for Tk private include files... $ECHO_C" >&6; } + +- TK_SRC_DIR_NATIVE=`${CYGPATH} ${TK_SRC_DIR}` ++ TK_SRC_DIR_NATIVE=`${CYGPATH}` + TK_TOP_DIR_NATIVE=\"${TK_SRC_DIR_NATIVE}\" + TK_UNIX_DIR_NATIVE=\"${TK_SRC_DIR_NATIVE}/unix\" + TK_WIN_DIR_NATIVE=\"${TK_SRC_DIR_NATIVE}/win\" +@@ -7278,12 +7278,12 @@ + TK_INCLUDES="-I\"${TK_BIN_DIR}/Headers\" -I\"${TK_BIN_DIR}/PrivateHeaders\" ${TK_INCLUDES}"; fi + ;; + esac +- else +- if test ! -f "${TK_SRC_DIR}/generic/tkInt.h" ; then +- { { echo "$as_me:$LINENO: error: Cannot find private header tkInt.h in ${TK_SRC_DIR}" >&5 +-echo "$as_me: error: Cannot find private header tkInt.h in ${TK_SRC_DIR}" >&2;} +- { (exit 1); exit 1; }; } +- fi ++# else ++# if test ! -f "${TK_SRC_DIR}/generic/tkInt.h" ; then ++# { { echo "$as_me:$LINENO: error: Cannot find private header tkInt.h in ${TK_SRC_DIR}" >&5 ++#echo "$as_me: error: Cannot find private header tkInt.h in ${TK_SRC_DIR}" >&2;} ++# { (exit 1); exit 1; }; } ++# fi + fi + + +@@ -7294,8 +7294,8 @@ + + + +- { echo "$as_me:$LINENO: result: Using srcdir found in tkConfig.sh: ${TK_SRC_DIR}" >&5 +-echo "${ECHO_T}Using srcdir found in tkConfig.sh: ${TK_SRC_DIR}" >&6; } ++# { echo "$as_me:$LINENO: result: Using srcdir found in tkConfig.sh: ${TK_SRC_DIR}" >&5 ++#echo "${ECHO_T}Using srcdir found in tkConfig.sh: ${TK_SRC_DIR}" >&6; } + + + if test "${TEA_WINDOWINGSYSTEM}" = "x11" ; then +@@ -8929,7 +8929,7 @@ + + fi + +- SHLIB_LD="${TCL_SRC_DIR}/unix/ldAix ${SHLIB_LD} ${SHLIB_LD_FLAGS}" ++ SHLIB_LD="${SHLIB_LD} ${SHLIB_LD_FLAGS}" + DL_LIBS="-ldl" + CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}' + LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} diff --git a/t/Togl/Togl-2.0_decl.patch b/t/Togl/Togl-2.0_decl.patch new file mode 100644 index 00000000..5abfeaf3 --- /dev/null +++ b/t/Togl/Togl-2.0_decl.patch @@ -0,0 +1,13 @@ +* fix function declaration to match previous definition +author: Miguel Dias Costa (National University of Singapore) +--- toglDecls.h.orig 2020-01-17 14:57:44.000178028 +0800 ++++ toglDecls.h 2020-01-17 14:58:07.046072088 +0800 +@@ -117,7 +117,7 @@ + EXTERN Bool Togl_UpdatePending _ANSI_ARGS_((const Togl * togl)); + /* 38 */ + EXTERN int Togl_WriteObj _ANSI_ARGS_((const Togl * togl, +- const Tcl_Obj * toglfont, Tcl_Obj * obj)); ++ const Tcl_Obj * toglfont, const Tcl_Obj * obj)); + /* 39 */ + EXTERN int Togl_WriteChars _ANSI_ARGS_((const Togl * togl, + const Tcl_Obj * toglfont, const char * str, diff --git a/u/UCX/UCX-1.10.1-NVHPC-21.2-CUDA-11.3.0.eb b/u/UCX/UCX-1.10.1-NVHPC-21.2-CUDA-11.3.0.eb new file mode 100644 index 00000000..d6f34ab4 --- /dev/null +++ b/u/UCX/UCX-1.10.1-NVHPC-21.2-CUDA-11.3.0.eb @@ -0,0 +1,51 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.10.1' +versionsuffix= '-CUDA-11.3.0' + +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.2'} +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.34'), + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDAcore', '11.3.0', '', True), + ('GDRCopy', '2.1', '-CUDA-11.3.0'), +] + +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=$EBROOTNCUDACORE ' + +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' diff --git a/u/UCX/UCX-1.9.0-GCCcore-8.2.0.eb b/u/UCX/UCX-1.9.0-GCCcore-8.2.0.eb new file mode 100644 index 00000000..be349ad3 --- /dev/null +++ b/u/UCX/UCX-1.9.0-GCCcore-8.2.0.eb @@ -0,0 +1,48 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.9.0' + +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': 'GCCcore', 'version': '8.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.gz'] +checksums = ['a7a2c8841dc0d5444088a4373dc9b9cc68dbffcd917c1eba92ca8ed8e5e635fb'] + +builddependencies = [ + ('binutils', '2.31.1'), + ('Autotools', '20180311', '', True), + ('pkg-config', '0.29.2', '', True), +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +dependencies = [ + ('numactl', '2.0.12'), +] + +configure_cmd = "contrib/configure-release" + +configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs ' +configopts += '--without-java --disable-doxygen-doc ' + +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' diff --git a/u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.2.2.eb b/u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.2.2.eb new file mode 100644 index 00000000..34469061 --- /dev/null +++ b/u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.2.2.eb @@ -0,0 +1,51 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.9.0' +versionsuffix= '-CUDA-11.2.2' + +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.2'} +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.34'), + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDAcore', '11.2.2', '', True), + ('GDRCopy', '2.1', versionsuffix), +] + +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' diff --git a/u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.3.0.eb b/u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.3.0.eb new file mode 100644 index 00000000..af986c02 --- /dev/null +++ b/u/UCX/UCX-1.9.0-NVHPC-21.2-CUDA-11.3.0.eb @@ -0,0 +1,51 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.9.0' +versionsuffix= '-CUDA-11.3.0' + +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.2'} +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.34'), + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDAcore', '11.3.0', '', True), + ('GDRCopy', '2.1', '-CUDA-11.3.0'), +] + +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' diff --git a/v/VASP/VASP-5.4.4-intel-2020a-mkl=sequential-BEEF-karolina.eb b/v/VASP/VASP-5.4.4-intel-2020a-mkl=sequential-BEEF-karolina.eb new file mode 100644 index 00000000..3782f463 --- /dev/null +++ b/v/VASP/VASP-5.4.4-intel-2020a-mkl=sequential-BEEF-karolina.eb @@ -0,0 +1,70 @@ +# IT4Innovations 2020 +# LK + +easyblock = 'MakeCp' + +name = 'VASP' +version = '5.4.4' +versionsuffix = '-mkl=sequential-BEEF' + +homepage = 'http://www.vasp.at' +description = """The Vienna Ab initio Simulation Package (VASP) is a local_computer program for atomic scale +materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, +from first principles. + +To use VASP, You need academic licenses from University of Wiena. Follow the instructions https://www.vasp.at/index.php/faqs. + +Then send us please a list of authorized users and their ID for which you need this access. Please use only http://support.it4i.cz/rt. We are responsible to verify your licenses. After succesfull verification You will be granted to use VASP in our enviroment.""" + +toolchain = {'name': 'intel', 'version': '2020a'} +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'] + +dependencies = [ + ('zlib', '1.2.11', '', True), + ('BEEF', '0.1.1'), +] + +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 && ' + +# remove mkl flag to prevent mixing dynamic libs with the static libs in +# LIBBLACS/SCALAPACK +prebuildopts += 'sed -i "s|-mkl=sequential ||" makefile.include && ' + +# OFLAG = -O2 -xAVX +prebuildopts += 'sed -i "s|OFLAG = -O2|OFLAG = -O2 -ip -xHost|" makefile.include && ' + +# objects add MKLROOT +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 && ' + +prebuildopts += 'sed -i "s|FFLAGS = -assume byterecl -w|FFLAGS = -FR -assume byterecl|" makefile.include && ' +prebuildopts += 'sed -i "s|BLAS =|BLAS = -mkl=sequential|" makefile.include && ' + +## libbeef +prebuildopts += 'sed -i "s|LLIBS =|LLIBS = $(SCALAPACK) $(LAPACK) $(BLAS) -L$EBROOTBEEF -lbeef|" makefile.include && ' + +# VASP uses LIBS as a list of folders +prebuildopts += 'unset LIBS && ' + +#prebuildopts += 'exit 1' + +buildopts = 'all BLACS="$LIBBLACS" SCALAPACK="$LIBSCALAPACK" ' + +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","license")' + +moduleclass = 'phys' diff --git a/v/VASP/VASP-5.4.4-intel-2020a-mkl=sequential-BEEF.eb b/v/VASP/VASP-5.4.4-intel-2020a-mkl=sequential-BEEF.eb index 3782f463..2a63da4e 100644 --- a/v/VASP/VASP-5.4.4-intel-2020a-mkl=sequential-BEEF.eb +++ b/v/VASP/VASP-5.4.4-intel-2020a-mkl=sequential-BEEF.eb @@ -30,6 +30,11 @@ dependencies = [ prebuildopts = 'cp arch/makefile.include.linux_intel ./makefile.include && ' +# AMD/intel cpu +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + prebuildopts += 'sed -i "s|-xHOST|-march=znver2|" makefile.include && ' + # path to libfftw3xf_intel.a is hardcoded in makefile.include prebuildopts += 'sed -i "s|\$(MKLROOT)/interfaces/fftw3xf|\$(FFTW_LIB_DIR)|" makefile.include && ' @@ -38,7 +43,7 @@ prebuildopts += 'sed -i "s|\$(MKLROOT)/interfaces/fftw3xf|\$(FFTW_LIB_DIR)|" mak prebuildopts += 'sed -i "s|-mkl=sequential ||" makefile.include && ' # OFLAG = -O2 -xAVX -prebuildopts += 'sed -i "s|OFLAG = -O2|OFLAG = -O2 -ip -xHost|" makefile.include && ' +prebuildopts += 'sed -i "s|OFLAG = -O2|OFLAG = -O3 -ip -march=znver2|" makefile.include && ' # objects add MKLROOT 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 && ' @@ -54,7 +59,7 @@ prebuildopts += 'unset LIBS && ' #prebuildopts += 'exit 1' -buildopts = 'all BLACS="$LIBBLACS" SCALAPACK="$LIBSCALAPACK" ' +buildopts = 'all' # BLACS="$LIBBLACS" SCALAPACK="$LIBSCALAPACK" ' parallel = 1 diff --git a/v/VASP/VASP-6.2.0-intel-2020b-mkl=sequential-karolina.eb b/v/VASP/VASP-6.2.0-intel-2020b-mkl=sequential-karolina.eb new file mode 100644 index 00000000..f2f4e8eb --- /dev/null +++ b/v/VASP/VASP-6.2.0-intel-2020b-mkl=sequential-karolina.eb @@ -0,0 +1,67 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'MakeCp' + +name = 'VASP' +version = '6.2.0' +versionsuffix = '-mkl=sequential-march=znver2' + +homepage = 'http://www.vasp.at' +description = """The Vienna Ab initio Simulation Package (VASP) is a local_computer program for atomic scale +materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, +from first principles. + +To use VASP, You need academic licenses from University of Wiena. Follow the instructions https://www.vasp.at/index.php/faqs. + +Then send us please a list of authorized users and their ID for which you need this access. Please use only http://support.it4i.cz/rt. We are responsible to verify your licenses. After succesfull verification You will be granted to use VASP in our enviroment.""" + +toolchain = {'name': 'intel', 'version': '2020b'} +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.tgz'] + +prebuildopts = 'cp arch/makefile.include.linux_intel ./makefile.include && ' + +# AMD/intel cpu +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + prebuildopts += 'sed -i "s|-xHOST|-march=znver2|" makefile.include && ' + +# path to libfftw3xf_intel.a is hardcoded in makefile.include +prebuildopts += 'sed -i "s|\$(MKLROOT)/interfaces/fftw3xf|\$(FFTW_LIB_DIR)|" 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 && ' + +# OFLAG = -O2 -xAVX +prebuildopts += 'sed -i "s|OFLAG = -O2|OFLAG = -O3 -ip -march=znver2|" makefile.include && ' + +# objects add MKLROOT +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 && ' + +prebuildopts += 'sed -i "s|FFLAGS = -assume byterecl -w|FFLAGS = -FR -assume byterecl|" makefile.include && ' +prebuildopts += 'sed -i "s|BLAS =|BLAS = -mkl=sequential|" makefile.include && ' + +# VASP uses LIBS as a list of folders +prebuildopts += 'unset LIBS && ' + +#prebuildopts += 'exit 1' + +buildopts = 'std gam ncl ' #BLACS="$LIBBLACS" SCALAPACK="$LIBSCALAPACK" ' + +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","license")' + +moduleclass = 'phys' diff --git a/v/VASP/VASP-6.2.0-intel-2020b.eb b/v/VASP/VASP-6.2.0-intel-2020b.eb new file mode 100644 index 00000000..3bde1b7a --- /dev/null +++ b/v/VASP/VASP-6.2.0-intel-2020b.eb @@ -0,0 +1,52 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'MakeCp' + +name = 'VASP' +version = '6.2.0' +versionsuffix = '-mkl=sequential' + +homepage = 'http://www.vasp.at' +description = """The Vienna Ab initio Simulation Package (VASP) is a local_computer program for atomic scale +materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, +from first principles. + +To use VASP, You need academic licenses from University of Wiena. Follow the instructions https://www.vasp.at/index.php/faqs. + +Then send us please a list of authorized users and their ID for which you need this access. Please use only http://support.it4i.cz/rt. We are responsible to verify your licenses. After succesfull verification You will be granted to use VASP in our enviroment.""" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'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.tgz'] + +prebuildopts = 'cp arch/makefile.include.linux_intel ./makefile.include && ' + +# Makefile uses LIBS as a list of folders +prebuildopts += 'unset LIBS && ' + +_targets = ['std', 'gam', 'ncl'] + +buildopts = '%s ' % ' '.join(_targets) +buildopts += 'FCL="$MPIF90" DEBUG="$FFLAGS" OFLAG="$FFLAGS" OFLAG_1="${FFLAGS/O2/O1}" OFLAG_2="$FFLAGS" ' +buildopts += 'OFLAG_3="${FFLAGS/O2/O3}" CFLAGS_LIB="$CFLAGS" FFLAGS_LIB="$FFLAGS" BLAS="$LIBBLAS" ' +buildopts += 'LAPACK="$LIBLAPACK" BLACS="$LIBBLACS" SCALAPACK="$LIBSCALAPACK"' + +# https://www.vasp.at/wiki/index.php/Validation_tests +runtest = 'test' + +parallel = 1 + +files_to_copy = [(['bin/vasp_' + x for x in _targets], 'bin')] + +sanity_check_paths = { + 'files': ['bin/vasp_' + x for x in _targets], + 'dirs': [] +} + +modluafooter = 'add_property("state","license")' + +moduleclass = 'phys' diff --git a/v/VASP/VASP-6.2.1-intel-2020b-mkl=sequential-karolina.eb b/v/VASP/VASP-6.2.1-intel-2020b-mkl=sequential-karolina.eb new file mode 100644 index 00000000..9f25249e --- /dev/null +++ b/v/VASP/VASP-6.2.1-intel-2020b-mkl=sequential-karolina.eb @@ -0,0 +1,67 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'MakeCp' + +name = 'VASP' +version = '6.2.1' +versionsuffix = '-mkl=sequential-march=znver2' + +homepage = 'http://www.vasp.at' +description = """The Vienna Ab initio Simulation Package (VASP) is a local_computer program for atomic scale +materials modelling, e.g. electronic structure calculations and quantum-mechanical molecular dynamics, +from first principles. + +To use VASP, You need academic licenses from University of Wiena. Follow the instructions https://www.vasp.at/index.php/faqs. + +Then send us please a list of authorized users and their ID for which you need this access. Please use only http://support.it4i.cz/rt. We are responsible to verify your licenses. After succesfull verification You will be granted to use VASP in our enviroment.""" + +toolchain = {'name': 'intel', 'version': '2020b'} +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.tgz'] + +prebuildopts = 'cp arch/makefile.include.linux_intel ./makefile.include && ' + +# AMD/intel cpu +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + prebuildopts += 'sed -i "s|-xHOST|-march=znver2|" makefile.include && ' + +# path to libfftw3xf_intel.a is hardcoded in makefile.include +prebuildopts += 'sed -i "s|\$(MKLROOT)/interfaces/fftw3xf|\$(FFTW_LIB_DIR)|" 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 && ' + +# OFLAG = -O2 -xAVX +prebuildopts += 'sed -i "s|OFLAG = -O2|OFLAG = -O3 -ip -march=znver2|" makefile.include && ' + +# objects add MKLROOT +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 && ' + +prebuildopts += 'sed -i "s|FFLAGS = -assume byterecl -w|FFLAGS = -FR -assume byterecl|" makefile.include && ' +prebuildopts += 'sed -i "s|BLAS =|BLAS = -mkl=sequential|" makefile.include && ' + +# VASP uses LIBS as a list of folders +prebuildopts += 'unset LIBS && ' + +#prebuildopts += 'exit 1' + +buildopts = 'std gam ncl ' #BLACS="$LIBBLACS" SCALAPACK="$LIBSCALAPACK" ' + +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","license")' + +moduleclass = 'phys' diff --git a/x/XCrySDen/XCrySDen-1.6.2-intel-2020b.eb b/x/XCrySDen/XCrySDen-1.6.2-intel-2020b.eb new file mode 100644 index 00000000..45048ecb --- /dev/null +++ b/x/XCrySDen/XCrySDen-1.6.2-intel-2020b.eb @@ -0,0 +1,30 @@ +# IT4Innovations 2021 +# JK + +name = 'XCrySDen' +version = '1.6.2' + +homepage = "http://www.xcrysden.org/" +description = """XCrySDen is a crystalline and molecular structure visualisation program aiming + at display of isosurfaces and contours, which can be superimposed on crystalline structures and + interactively rotated and manipulated.""" + +toolchain = {'name': 'intel', 'version': '2020b'} +toolchainopts = {'vectorize': False} + +source_urls = ["http://www.xcrysden.org/download/"] +sources = [SOURCELOWER_TAR_GZ] + +local_tcltk_ver = '8.6.11' +dependencies = [ + ('Tcl', local_tcltk_ver), + ('Tk', local_tcltk_ver), + ('Togl', '2.0'), + ('X11', '20201008'), + ('libGLU', '9.0.1'), + ('bwidget', '1.9.14'), +] + +parallel = 1 + +moduleclass = 'vis' diff --git a/y/Yambo/Yambo-5.0.0-intel-2020a.eb b/y/Yambo/Yambo-5.0.0-intel-2020a.eb index b00b3c7b..54793ffa 100644 --- a/y/Yambo/Yambo-5.0.0-intel-2020a.eb +++ b/y/Yambo/Yambo-5.0.0-intel-2020a.eb @@ -41,7 +41,7 @@ buildopts = 'all' parallel = 1 files_to_copy = [ - (['bin/*'], 'bin'), + (['sbin/*'], 'bin'), (['lib/*.a'], 'lib'), (['include/*'], 'include'), ]