From 73ee681a9a4995e205db7eab6baeda86bab185f5 Mon Sep 17 00:00:00 2001 From: Jakub Kropacek Date: Wed, 13 Oct 2021 19:53:53 +0200 Subject: [PATCH] modified: a/ABINIT/ABINIT-9.4.2-intel-2020b.eb new file: a/ANSYS/ANSYS-21.2-intel-2020b.eb new file: g/GDRCopy/GDRCopy-2.1-NVHPC-21.9-CUDA-11.4.1.eb new file: g/GDRCopy/GDRCopy-2.3-GCCcore-10.2.0.eb new file: g/GDRCopy/GDRCopy-2.3-NVHPC-21.9-CUDA-11.4.1.eb new file: h/HDF5/HDF5-1.10.7-iimpi-2021a.eb new file: n/NVHPC/NVHPC-21.9.eb new file: o/OpenMPI/OpenMPI-4.0.6-NVHPC-21.9-CUDA-11.4.1.eb modified: q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6.eb new file: u/UCX/UCX-1.11.2-NVHPC-21.9-CUDA-11.4.1.eb deleted: q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2-test.eb deleted: q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2.eb deleted: q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6-test.eb --- a/ABINIT/ABINIT-9.4.2-intel-2020b.eb | 2 +- a/ANSYS/ANSYS-21.2-intel-2020b.eb | 26 ++++++++ .../GDRCopy-2.1-NVHPC-21.9-CUDA-11.4.1.eb | 58 +++++++++++++++++ g/GDRCopy/GDRCopy-2.3-GCCcore-10.2.0.eb | 55 ++++++++++++++++ .../GDRCopy-2.3-NVHPC-21.9-CUDA-11.4.1.eb | 60 +++++++++++++++++ h/HDF5/HDF5-1.10.7-iimpi-2021a.eb | 28 ++++++++ n/NVHPC/NVHPC-21.9.eb | 65 +++++++++++++++++++ .../OpenMPI-4.0.6-NVHPC-21.9-CUDA-11.4.1.eb | 32 +++++++++ ...CK-3.11.0-intel-2020a-Python-3.8.2-test.eb | 57 ---------------- ...QMCPACK-3.11.0-intel-2020a-Python-3.8.2.eb | 51 --------------- ...CK-3.11.0-intel-2020b-Python-3.8.6-test.eb | 53 --------------- ...QMCPACK-3.11.0-intel-2020b-Python-3.8.6.eb | 9 +-- u/UCX/UCX-1.11.2-NVHPC-21.9-CUDA-11.4.1.eb | 51 +++++++++++++++ 13 files changed, 381 insertions(+), 166 deletions(-) create mode 100644 a/ANSYS/ANSYS-21.2-intel-2020b.eb create mode 100644 g/GDRCopy/GDRCopy-2.1-NVHPC-21.9-CUDA-11.4.1.eb create mode 100644 g/GDRCopy/GDRCopy-2.3-GCCcore-10.2.0.eb create mode 100644 g/GDRCopy/GDRCopy-2.3-NVHPC-21.9-CUDA-11.4.1.eb create mode 100644 h/HDF5/HDF5-1.10.7-iimpi-2021a.eb create mode 100644 n/NVHPC/NVHPC-21.9.eb create mode 100644 o/OpenMPI/OpenMPI-4.0.6-NVHPC-21.9-CUDA-11.4.1.eb delete mode 100644 q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2-test.eb delete mode 100644 q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2.eb delete mode 100644 q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6-test.eb create mode 100644 u/UCX/UCX-1.11.2-NVHPC-21.9-CUDA-11.4.1.eb diff --git a/a/ABINIT/ABINIT-9.4.2-intel-2020b.eb b/a/ABINIT/ABINIT-9.4.2-intel-2020b.eb index 9068152c..89bc18f1 100644 --- a/a/ABINIT/ABINIT-9.4.2-intel-2020b.eb +++ b/a/ABINIT/ABINIT-9.4.2-intel-2020b.eb @@ -32,7 +32,7 @@ dependencies = [ ('libxc', '4.3.4'), ('netCDF', '4.7.4'), ('netCDF-Fortran', '4.5.3'), - ('HDF5', '1.10.7'), + ('HDF5', '1.10.6', '-parallel'), ('Wannier90', '3.1.0'), ] diff --git a/a/ANSYS/ANSYS-21.2-intel-2020b.eb b/a/ANSYS/ANSYS-21.2-intel-2020b.eb new file mode 100644 index 00000000..80f75374 --- /dev/null +++ b/a/ANSYS/ANSYS-21.2-intel-2020b.eb @@ -0,0 +1,26 @@ +# IT4Innovations +# LK 2021 + +name = 'ANSYS' +version = '21.2' + +homepage = 'http://www.ansys.com' +description = """ANSYS simulation software enables organizations to confidently predict + how their products will operate in the real world. We believe that every product is + a promise of something greater. """ + +toolchain = {'name': 'intel', 'version': '2020b'} + +# create a zip file from the 3 install iso files. +# make sure all files of the iso's are in the same directory. +sources = ['ansys-%(version)s.tar.gz'] + +dependencies = [ + ('libGLU', '9.0.1'), +] + +import os +license_server = os.getenv('EB_ANSYS_LICENSE_SERVER', '10.5.8.13') +license_server_port = os.getenv('EB_ANSYS_LICENSE_SERVER_PORT', '2325:1055') + +moduleclass = 'tools' diff --git a/g/GDRCopy/GDRCopy-2.1-NVHPC-21.9-CUDA-11.4.1.eb b/g/GDRCopy/GDRCopy-2.1-NVHPC-21.9-CUDA-11.4.1.eb new file mode 100644 index 00000000..7a03b634 --- /dev/null +++ b/g/GDRCopy/GDRCopy-2.1-NVHPC-21.9-CUDA-11.4.1.eb @@ -0,0 +1,58 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'GDRCopy' +version = '2.1' +versionsuffix = '-CUDA-11.4.1' + +homepage = 'https://github.com/NVIDIA/gdrcopy' +description = "A low-latency GPU memory copy library based on NVIDIA GPUDirect RDMA technology." + +toolchain = {'name': 'NVHPC', 'version': '21.9'} +toolchainopts = {'pic': True} + +github_account = 'NVIDIA' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] + +builddependencies = [ + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Check', '0.15.2'), + ('CUDAcore', '11.4.1', '', True), +] + +# This easyconfig only installs the library and binaries of GDRCopy. Please +# keep in mind that GDRCopy also needs the following kernel modules at runtime: +# +# 1. Kernel module for GDRCopy: improves Host to GPU communication +# https://github.com/NVIDIA/gdrcopy +# RPM: 'gdrcopy-kmod', DEB: 'gdrdrv-dkms' +# Requirements: version of GDRCopy kernel module (gdrdrv.ko) >= 2.0 +# +# 2. (optional) Kernel module for GPUDirect RDMA: improves GPU to GPU communication +# https://github.com/Mellanox/nv_peer_memory +# RPM: 'nvidia_peer_memory' +# Requirements: Mellanox HCA with MLNX_OFED 2.1 +# +# These kernel modules are not listed as system dependencies to lower the system +# requirements to build this easyconfig, as they are not needed for the build. + +skipsteps = ['configure'] + +local_envopts = "PREFIX=%(installdir)s CUDA=$EBROOTCUDACORE" +prebuildopts = "PATH=$PATH:/sbin " # ensures that ldconfig is found +buildopts = "config lib exes %s" % local_envopts +installopts = local_envopts + +sanity_check_paths = { + 'files': ['bin/copybw', 'bin/copylat', 'bin/sanity', 'lib/libgdrapi.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/g/GDRCopy/GDRCopy-2.3-GCCcore-10.2.0.eb b/g/GDRCopy/GDRCopy-2.3-GCCcore-10.2.0.eb new file mode 100644 index 00000000..69459620 --- /dev/null +++ b/g/GDRCopy/GDRCopy-2.3-GCCcore-10.2.0.eb @@ -0,0 +1,55 @@ +# IT4Innovations +# LK 2021 + +easyblock = 'ConfigureMake' + +name = 'GDRCopy' +version = '2.3' + +homepage = 'https://github.com/NVIDIA/gdrcopy' +description = "A low-latency GPU memory copy library based on NVIDIA GPUDirect RDMA technology." + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} +toolchainopts = {'pic': True} + +github_account = 'NVIDIA' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['b85d15901889aa42de6c4a9233792af40dd94543e82abe0439e544c87fd79475'] + +builddependencies = [ + ('binutils', '2.35'), + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +# This easyconfig only installs the library of GDRCopy. Please keep in mind +# that GDRCopy also needs the following kernel modules at runtime: +# +# 1. Kernel module for GDRCopy: improves Host to GPU communication +# https://github.com/NVIDIA/gdrcopy +# RPM: 'gdrcopy-kmod', DEB: 'gdrdrv-dkms' +# Requirements: version of GDRCopy kernel module (gdrdrv.ko) >= 2.0 +# +# 2. (optional) Kernel module for GPUDirect RDMA: improves GPU to GPU communication +# https://github.com/Mellanox/nv_peer_memory +# RPM: 'nvidia_peer_memory' +# Requirements: Mellanox HCA with MLNX_OFED 2.1 +# +# These kernel modules are not listed as system dependencies to lower the system +# requirements to build this easyconfig, as they are not needed for the build. + +skipsteps = ['configure'] + +local_envopts = "prefix=%(installdir)s" +prebuildopts = "PATH=$PATH:/sbin " # ensures that ldconfig is found +buildopts = "config lib %s" % local_envopts +install_cmd = "make lib_install" +installopts = local_envopts + +sanity_check_paths = { + 'files': ['lib/libgdrapi.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/g/GDRCopy/GDRCopy-2.3-NVHPC-21.9-CUDA-11.4.1.eb b/g/GDRCopy/GDRCopy-2.3-NVHPC-21.9-CUDA-11.4.1.eb new file mode 100644 index 00000000..b380fcaa --- /dev/null +++ b/g/GDRCopy/GDRCopy-2.3-NVHPC-21.9-CUDA-11.4.1.eb @@ -0,0 +1,60 @@ +# IT4Innovations +# LK 2021 + +easyblock = 'ConfigureMake' + +name = 'GDRCopy' +version = '2.3' +versionsuffix = '-CUDA-11.4.1' + +homepage = 'https://github.com/NVIDIA/gdrcopy' +description = "A low-latency GPU memory copy library based on NVIDIA GPUDirect RDMA technology." + +toolchain = {'name': 'NVHPC', 'version': '21.9'} +toolchainopts = {'pic': True} + +github_account = 'NVIDIA' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['b85d15901889aa42de6c4a9233792af40dd94543e82abe0439e544c87fd79475'] + +builddependencies = [ + ('binutils', '2.35'), + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('CUDAcore', '11.4.1', '', True), +] + +# This easyconfig only installs the library of GDRCopy. Please keep in mind +# that GDRCopy also needs the following kernel modules at runtime: +# +# 1. Kernel module for GDRCopy: improves Host to GPU communication +# https://github.com/NVIDIA/gdrcopy +# RPM: 'gdrcopy-kmod', DEB: 'gdrdrv-dkms' +# Requirements: version of GDRCopy kernel module (gdrdrv.ko) >= 2.0 +# +# 2. (optional) Kernel module for GPUDirect RDMA: improves GPU to GPU communication +# https://github.com/Mellanox/nv_peer_memory +# RPM: 'nvidia_peer_memory' +# Requirements: Mellanox HCA with MLNX_OFED 2.1 +# +# These kernel modules are not listed as system dependencies to lower the system +# requirements to build this easyconfig, as they are not needed for the build. + +skipsteps = ['configure'] + +local_envopts = "prefix=%(installdir)s" +prebuildopts = "PATH=$PATH:/sbin " # ensures that ldconfig is found +buildopts = "config lib %s" % local_envopts +install_cmd = "make lib_install" +installopts = local_envopts + +sanity_check_paths = { + 'files': ['lib/libgdrapi.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/h/HDF5/HDF5-1.10.7-iimpi-2021a.eb b/h/HDF5/HDF5-1.10.7-iimpi-2021a.eb new file mode 100644 index 00000000..be61e812 --- /dev/null +++ b/h/HDF5/HDF5-1.10.7-iimpi-2021a.eb @@ -0,0 +1,28 @@ +# IT4Innovations +# LK 2021 + +name = 'HDF5' +version = '1.10.7' + +homepage = 'https://portal.hdfgroup.org/display/support' +description = """HDF5 is a data model, library, and file format for storing and managing data. + It supports an unlimited variety of datatypes, and is designed for flexible + and efficient I/O and for high volume and complex data.""" + +toolchain = {'name': 'iimpi', 'version': '2021a'} +import os +if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: + toolchainopts = {'pic': True, 'usempi': True, 'optarch': 'march=core-avx2'} +else: + toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['7a1a0a54371275ce2dfc5cd093775bb025c365846512961e7e5ceaecb437ef15'] + +dependencies = [ + ('zlib', '1.2.11'), + ('Szip', '2.1.1'), +] + +moduleclass = 'data' diff --git a/n/NVHPC/NVHPC-21.9.eb b/n/NVHPC/NVHPC-21.9.eb new file mode 100644 index 00000000..caad9a04 --- /dev/null +++ b/n/NVHPC/NVHPC-21.9.eb @@ -0,0 +1,65 @@ +# IT4Innovations 2021 +# LK + +name = 'NVHPC' +version = '21.9' + +homepage = 'https://developer.nvidia.com/hpc-sdk/' +description = """C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI)""" + +toolchain = SYSTEM + +# By downloading, you accept the HPC SDK Software License Agreement (https://docs.nvidia.com/hpc-sdk/eula/index.html) +accept_eula = True +source_urls = ['https://developer.download.nvidia.com/hpc-sdk/%(version)s/'] +local_tarball_tmpl = 'nvhpc_2021_%%(version_major)s%%(version_minor)s_Linux_%s_cuda_multi.tar.gz' +sources = [local_tarball_tmpl % '%(arch)s'] + +local_gccver = '10.2.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.35', '', ('GCCcore', local_gccver)), + # This is necessary to avoid cases where just libnuma.so.1 is present in the system and -lnuma fails + ('numactl', '2.0.13', '', ('GCCcore', local_gccver)) +] + +# specify default CUDA version that should be used by NVHPC +# should match one of the CUDA versions that are included with this NVHPC version +# (see install_components/Linux_x86_64/20.7/cuda/) +# for NVHPC 20.7, those are: 11.0, 10.2, 10.1; +# this version can be tweaked from the EasyBuild command line with +# --try-amend=default_cuda_version="10.2" (for example) +default_cuda_version = '11.4' + +# NVHPC EasyBlock supports some features, which can be set via CLI or this easyconfig. +# The following list gives examples for the easyconfig +# +# NVHPC needs CUDA to work. Two options are available: 1) Use NVHPC-bundled CUDA, 2) use system CUDA +# 1) Bundled CUDA +# If no easybuild dependency to CUDA is present, the bundled CUDA is taken. A version needs to be specified with +# default_cuda_version = "11.0" +# in this easyconfig file; alternatively, it can be specified through the command line during installation with +# --try-amend=default_cuda_version="10.2" +# 2) CUDA provided via EasyBuild +# Use CUDAcore as a dependency, for example +# dependencies = [('CUDAcore', '11.0.2')] +# The parameter default_cuda_version still can be set as above. +# If not set, it will be deduced from the CUDA module (via $EBVERSIONCUDA) +# +# Define a NVHPC-default Compute Capability +# cuda_compute_capabilities = "8.0" +cuda_compute_capabilities = '7.0' #V100 GPU +# Can also be specified on the EasyBuild command line via --cuda-compute-capabilities=8.0 +# Only single values supported, not lists of values! +# +# Options to add/remove things to/from environment module (defaults shown) +# module_byo_compilers = Yes # Remove compilers from PATH (Bring-your-own compilers) +# module_nvhpc_own_mpi = False # Add NVHPC's own pre-compiled OpenMPI +# module_add_math_libs = Yes # Add NVHPC's math libraries (which should be there from CUDA anyway) +# module_add_profilers = Yes # Add NVHPC's NVIDIA Profilers +# module_add_nccl = Yes # Add NVHPC's NCCL library +# module_add_nvshmem = Yes # Add NVHPC's NVSHMEM library +# module_add_cuda = Yes # Add NVHPC's bundled CUDA + +# this bundle serves as a compiler-only toolchain, so it should be marked as compiler (important for HMNS) +moduleclass = 'compiler' diff --git a/o/OpenMPI/OpenMPI-4.0.6-NVHPC-21.9-CUDA-11.4.1.eb b/o/OpenMPI/OpenMPI-4.0.6-NVHPC-21.9-CUDA-11.4.1.eb new file mode 100644 index 00000000..c062fe96 --- /dev/null +++ b/o/OpenMPI/OpenMPI-4.0.6-NVHPC-21.9-CUDA-11.4.1.eb @@ -0,0 +1,32 @@ +# IT4Innovations 2021 +# LK + +name = 'OpenMPI' +version = '4.0.6' +versionsuffix = '-CUDA-11.4.1' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'NVHPC', 'version': '21.9'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_GZ] + +dependencies = [ + ('UCX', '1.11.2', versionsuffix), + ('CUDAcore', '11.4.1', '', True), + ('GDRCopy', '2.3', versionsuffix), +] + +preconfigopts = 'export CC="pgcc -noswitcherror" && export CXX="pgc++ -noswitcherror" && export FC="pgfortran -noswitcherror" && ' + +configopts = '--enable-shared --enable-mpi-thread-multiple --with-verbs ' +configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support +configopts += '--enable-mpirun-prefix-by-default ' +configopts += '--with-tm=/opt/pbs ' # Enable PBS +configopts += '--enable-mpi-cxx ' # Enable building the C++ MPI bindings +configopts += '--with-ucx=$EBROOTUCX ' +configopts += '--with-cuda=$EBROOTCUDACORE ' + +moduleclass = 'mpi' diff --git a/q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2-test.eb b/q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2-test.eb deleted file mode 100644 index 34320ff1..00000000 --- a/q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2-test.eb +++ /dev/null @@ -1,57 +0,0 @@ -# IT4Innovations 2021 -# JK 2021 - -easyblock = 'CMakeMake' - -name = 'QMCPACK' -version = '3.11.0' -versionsuffix = "-Python-%(pyver)s-test" - -homepage = "https://qmcpack.org/" -description = """QMCPACK, is a modern high-performance open-source Quantum Monte Carlo (QMC) simulation code. Its main applications are electronic structure calculations of molecular, quasi-2D and solid-state systems. Variational Monte Carlo (VMC), diffusion Monte Carlo (DMC) and a number of other advanced QMC algorithms are implemented. Orbital space auxiliary field QMC (AFQMC) has recently been added. By directly solving the Schrodinger equation, QMC methods offer greater accuracy than methods such as density functional theory, but at a trade-off of much greater local_computational expense. -""" - -toolchain = {'name': 'intel', 'version': '2020a'} -toolchainopts = {'opt': True, 'pic': True, 'usempi': True, 'optarch': 'march=core-avx2'} - -# AMD/intel cpu -import os -if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: - prebuildopts = "echo %(builddir)s && while read i; do echo $i; sed 's|-xHost|-march=core-avx2|g' -i $i; done < <(grep xHost %(builddir)s -R | cut -d ':' -f 1 | sort -u) && " - - -source_urls = ['https://github.com/QMCPACK/qmcpack/archive/'] -sources = ['v%(version)s.tar.gz'] - -builddependencies = [('CMake', '3.16.4')] - -dependencies = [ - ('libxml2', '2.9.10'), - ('Boost', '1.72.0'), - ('HDF5', '1.10.6', '', ('iimpi', '2020a')), - ('Python', '3.8.2'), - ('h5py', '2.10.0', '-Python-3.8.2'), # versionsuffix - ('numpy', '1.18.3', '-Python-3.8.2'), - ('matplotlib', '3.2.1', '-Python-3.8.2'), -] - -separate_build_dir = True - -configopts = ' -DENABLE_SOA=1 ' - -# prekopiruje nexus knihovny o kterych install file tvrdi, ze nejsou potreba -# ale evidentne to bez nich nejede -preinstallopts = [ - ' mkdir -p %(installdir)s/nexus && ', - ' cp -r %(builddir)s/qmcpack-%(version)s/nexus/lib %(installdir)s/nexus/lib && ', -] - -# prida nexus knihovny do PYTHONPATH -modextrapaths = {'PYTHONPATH': 'nexus/lib'} - -sanity_check_paths = { - 'files': ['bin/qmcpack'], - 'dirs': ['bin'], -} - -moduleclass = 'phys' diff --git a/q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2.eb b/q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2.eb deleted file mode 100644 index 0be90fd2..00000000 --- a/q/QMCPACK/QMCPACK-3.11.0-intel-2020a-Python-3.8.2.eb +++ /dev/null @@ -1,51 +0,0 @@ -# IT4Innovations 2021 -# JK 2021 - -easyblock = 'CMakeMake' - -name = 'QMCPACK' -version = '3.11.0' -versionsuffix = "-Python-%(pyver)s" - -homepage = "https://qmcpack.org/" -description = """QMCPACK, is a modern high-performance open-source Quantum Monte Carlo (QMC) simulation code. Its main applications are electronic structure calculations of molecular, quasi-2D and solid-state systems. Variational Monte Carlo (VMC), diffusion Monte Carlo (DMC) and a number of other advanced QMC algorithms are implemented. Orbital space auxiliary field QMC (AFQMC) has recently been added. By directly solving the Schrodinger equation, QMC methods offer greater accuracy than methods such as density functional theory, but at a trade-off of much greater local_computational expense. -""" - -toolchain = {'name': 'intel', 'version': '2020a'} -toolchainopts = {'opt': True, 'pic': True, 'usempi': True} - -source_urls = ['https://github.com/QMCPACK/qmcpack/archive/'] -sources = ['v%(version)s.tar.gz'] - -builddependencies = [('CMake', '3.16.4')] - -dependencies = [ - ('libxml2', '2.9.10'), - ('Boost', '1.72.0'), - ('HDF5', '1.10.6', '', ('iimpi', '2020a')), - ('Python', '3.8.2'), - ('h5py', '2.10.0', '-Python-3.8.2'), # versionsuffix - ('numpy', '1.18.3', '-Python-3.8.2'), - ('matplotlib', '3.2.1', '-Python-3.8.2'), -] - -separate_build_dir = True - -configopts = ' -DENABLE_SOA=1 ' - -# prekopiruje nexus knihovny o kterych install file tvrdi, ze nejsou potreba -# ale evidentne to bez nich nejede -preinstallopts = [ - ' mkdir -p %(installdir)s/nexus && ', - ' cp -r %(builddir)s/qmcpack-%(version)s/nexus/lib %(installdir)s/nexus/lib && ', -] - -# prida nexus knihovny do PYTHONPATH -modextrapaths = {'PYTHONPATH': 'nexus/lib'} - -sanity_check_paths = { - 'files': ['bin/qmcpack'], - 'dirs': ['bin'], -} - -moduleclass = 'phys' diff --git a/q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6-test.eb b/q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6-test.eb deleted file mode 100644 index 327a9234..00000000 --- a/q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6-test.eb +++ /dev/null @@ -1,53 +0,0 @@ -# IT4Innovations 2021 -# JK 2021 - -easyblock = 'CMakeMake' - -name = 'QMCPACK' -version = '3.11.0' -versionsuffix = "-Python-%(pyver)s-test" - -homepage = "https://qmcpack.org/" -description = """QMCPACK, is a modern high-performance open-source Quantum Monte Carlo (QMC) simulation code. Its main applications are electronic structure calculations of molecular, quasi-2D and solid-state systems. Variational Monte Carlo (VMC), diffusion Monte Carlo (DMC) and a number of other advanced QMC algorithms are implemented. Orbital space auxiliary field QMC (AFQMC) has recently been added. By directly solving the Schrodinger equation, QMC methods offer greater accuracy than methods such as density functional theory, but at a trade-off of much greater local_computational expense. -""" - -toolchain = {'name': 'intel', 'version': '2020b'} -toolchainopts = {'opt': True, 'pic': True, 'usempi': True, 'optarch': 'march=core-avx2'} - -source_urls = ['https://github.com/QMCPACK/qmcpack/archive/'] -sources = ['v%(version)s.tar.gz'] - -builddependencies = [('CMake', '3.20.1', '', True)] - -dependencies = [ - ('libxml2', '2.9.10'), - ('Boost', '1.74.0'), - ('HDF5', '1.10.6', '-parallel'), - ('Python', '3.8.6'), - ('h5py', '3.1.0'), - ('SciPy-bundle', '2020.11'), - ('GCC', '9.3.0', '', True), -] - -separate_build_dir = True - -configopts = ' -DENABLE_SOA=1 ' - - -# prekopiruje nexus knihovny o kterych install file tvrdi, ze nejsou potreba -# ale evidentne to bez nich nejede -preinstallopts = [ - ' mkdir -p %(installdir)s/nexus && ', - ' cp -r %(builddir)s/qmcpack-%(version)s/nexus/lib %(installdir)s/nexus/lib && ', -] - - -# prida nexus knihovny do PYTHONPATH -modextrapaths = {'PYTHONPATH': 'nexus/lib'} - -sanity_check_paths = { - 'files': ['bin/qmcpack'], - 'dirs': ['bin'], -} - -moduleclass = 'phys' diff --git a/q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6.eb b/q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6.eb index 24cadec0..8143fc15 100644 --- a/q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6.eb +++ b/q/QMCPACK/QMCPACK-3.11.0-intel-2020b-Python-3.8.6.eb @@ -1,5 +1,5 @@ # IT4Innovations 2021 -# JK 2021 +# JK2021 easyblock = 'CMakeMake' @@ -11,11 +11,12 @@ homepage = "https://qmcpack.org/" description = """QMCPACK, is a modern high-performance open-source Quantum Monte Carlo (QMC) simulation code. Its main applications are electronic structure calculations of molecular, quasi-2D and solid-state systems. Variational Monte Carlo (VMC), diffusion Monte Carlo (DMC) and a number of other advanced QMC algorithms are implemented. Orbital space auxiliary field QMC (AFQMC) has recently been added. By directly solving the Schrodinger equation, QMC methods offer greater accuracy than methods such as density functional theory, but at a trade-off of much greater local_computational expense. """ +# vyžaduje GCC 9.3.0, které nemá podporu pro naše AMD procesory => kompilace s druhým AMD hackem je broken toolchain = {'name': 'intel', 'version': '2020b'} import os if os.environ.get("CLUSTERNAME") in ["KAROLINA"]: toolchainopts = {'opt': True, 'pic': True, 'usempi': True, 'optarch': 'march=core-avx2'} - prebuildopts = "echo %(builddir)s && while read i; do echo $i; sed 's|-xHost|-march=core-avx2|g' -i $i; done < <(grep xHost %(builddir)s -R | cut -d ':' -f 1 | sort -u) &&" +# prebuildopts = "echo %(builddir)s && while read i; do echo $i; sed 's|-xHost|-march=core-avx2|g' -i $i; done < <(grep xHost %(builddir)s -R | cut -d ':' -f 1 | sort -u) &&" else: toolchainopts = {'opt': True, 'pic': True, 'usempi': True} @@ -29,9 +30,9 @@ dependencies = [ ('Boost', '1.74.0'), ('HDF5', '1.10.6', '-parallel'), ('Python', '3.8.6'), - ('h5py', '3.1.0'), # versionsuffix + ('h5py', '3.1.0'), ('SciPy-bundle', '2020.11'), - ('GCC', '9.3.0', '', True), + ('GCC', '9.3.0', '', True), # obejití podmínky GCC 9.3.0 ] separate_build_dir = True diff --git a/u/UCX/UCX-1.11.2-NVHPC-21.9-CUDA-11.4.1.eb b/u/UCX/UCX-1.11.2-NVHPC-21.9-CUDA-11.4.1.eb new file mode 100644 index 00000000..071e8816 --- /dev/null +++ b/u/UCX/UCX-1.11.2-NVHPC-21.9-CUDA-11.4.1.eb @@ -0,0 +1,51 @@ +# IT4Innovations 2021 +# LK + +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.11.2' +versionsuffix= '-CUDA-11.4.1' + +homepage = 'http://www.openucx.org/' +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications +""" + +toolchain = {'name': 'NVHPC', 'version': '21.9'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.gz'] +#patches = ['%(name)s-%(version)s.patch'] + +builddependencies = [ + ('binutils', '2.35'), + ('Autotools', '20200321'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDAcore', '11.4.1', '', True), + ('GDRCopy', '2.3', '-CUDA-11.4.1'), +] + +configure_cmd = "contrib/configure-release" + +configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs --with-gdrcopy=$EBROOTGDRCOPY ' +configopts += '--without-java --disable-doxygen-doc --with-cuda=$EBROOTCUDACORE ' + +buildopts = 'V=1' + +sanity_check_paths = { + 'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'], + 'dirs': ['include', 'lib', 'share'] +} + +#sanity_check_commands = ["ucx_info -d"] + +moduleclass = 'lib'