diff --git a/Custom_EasyBlocks/README.md b/Custom_EasyBlocks/README.md new file mode 100644 index 0000000000000000000000000000000000000000..7769f5d8f1f46a63cbb269372591a8c7305daed2 --- /dev/null +++ b/Custom_EasyBlocks/README.md @@ -0,0 +1,11 @@ +# Custom EasyBlocks + +Overview of the custom EasyBlocks. + + +## Quantum ESPRESSO + +- __*added by*__ s.achilles +- __*needed because*__ Installation with GCC 9.x required a change in the EasyBlock. +- __*difference compared to upstream*__ Upstream EasyBlocks 4.3.3 reflects this change as well as support for GCC 10. +- __*can be removed*__ when we upgread EasyBlocks 4.3.3+ diff --git a/Custom_EasyBlocks/nvhpc.py b/Custom_EasyBlocks/nvhpc.py index e78fbf86409d1c5c604fd0178239378a1f28a9c2..a701a17c871e9f131dac416b74c02dfbab3d017d 100644 --- a/Custom_EasyBlocks/nvhpc.py +++ b/Custom_EasyBlocks/nvhpc.py @@ -1,6 +1,6 @@ ## # Copyright 2015-2019 Bart Oldeman -# Copyright 2016-2020 Forschungszentrum Juelich +# Copyright 2016-2021 Forschungszentrum Juelich # # This file is triple-licensed under GPLv2 (see below), MIT, and # BSD three-clause licenses. @@ -38,6 +38,7 @@ import fileinput import re import stat import sys +import platform from easybuild.easyblocks.generic.packedbinary import PackedBinary from easybuild.framework.easyconfig import CUSTOM @@ -90,12 +91,20 @@ class EB_NVHPC(PackedBinary): """Easyblock constructor, define custom class variables specific to NVHPC.""" super(EB_NVHPC, self).__init__(*args, **kwargs) - # Potential improvement: get "Linux_x86_64" from easybuild.tools.systemtools' get_cpu_architecture() - self.nvhpc_install_subdir = os.path.join('Linux_x86_64', self.version) + # Ideally we should be using something like `easybuild.tools.systemtools.get_cpu_architecture` here, however, + # on `ppc64le` systems this function returns `POWER` instead of `ppc64le`. Since this path needs to reflect + # `arch` (https://easybuild.readthedocs.io/en/latest/version-specific/easyconfig_templates.html) the same + # procedure from `templates.py` was reused here: + architecture = 'Linux_%s' % platform.uname()[4] + self.nvhpc_install_subdir = os.path.join(architecture, self.version) def install_step(self): """Install by running install command.""" + # EULA for NVHPC must be accepted via --accept-eula EasyBuild configuration option, + # or via 'accept_eula = True' in easyconfig file + # self.check_accepted_eula(more_info='https://docs.nvidia.com/hpc-sdk/eula/index.html') # only supported in next EasyBuild release + default_cuda_version = self.cfg['default_cuda_version'] if default_cuda_version is None: module_cuda_version_full = get_software_version('CUDA') diff --git a/Custom_EasyBlocks/vmd.py b/Custom_EasyBlocks/vmd.py new file mode 100644 index 0000000000000000000000000000000000000000..6f8a38e280cc45ea093c9592c62b7ae8e0d5cb14 --- /dev/null +++ b/Custom_EasyBlocks/vmd.py @@ -0,0 +1,232 @@ +## +# Copyright 2009-2020 Ghent University +# Copyright 2015-2020 Stanford University +# +# This file is part of EasyBuild, +# originally created by the HPC team of Ghent University (http://ugent.be/hpc/en), +# with support of Ghent University (http://ugent.be/hpc), +# the Flemish Supercomputer Centre (VSC) (https://vscentrum.be/nl/en), +# the Hercules foundation (http://www.herculesstichting.be/in_English) +# and the Department of Economy, Science and Innovation (EWI) (http://www.ewi-vlaanderen.be/en). +# +# https://github.com/easybuilders/easybuild +# +# EasyBuild is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation v2. +# +# EasyBuild is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with EasyBuild. If not, see <http://www.gnu.org/licenses/>. +## +""" +EasyBuild support for VMD, implemented as an easyblock + +@author: Stephane Thiell (Stanford University) +@author: Kenneth Hoste (HPC-UGent) +""" +import os + +from distutils.version import LooseVersion +from easybuild.easyblocks.generic.configuremake import ConfigureMake +from easybuild.easyblocks.generic.pythonpackage import det_pylibdir +from easybuild.tools.build_log import EasyBuildError +from easybuild.tools.filetools import change_dir, copy_file, extract_file +from easybuild.tools.run import run_cmd +from easybuild.tools.modules import get_software_root, get_software_version +import easybuild.tools.environment as env +import easybuild.tools.toolchain as toolchain + + +class EB_VMD(ConfigureMake): + """Easyblock for building and installing VMD""" + + def __init__(self, *args, **kwargs): + """Initialize VMD-specific variables.""" + super(EB_VMD, self).__init__(*args, **kwargs) + # source tarballs contains a 'plugins' and 'vmd-<version>' directory + self.vmddir = os.path.join(self.builddir, '%s-%s' % (self.name.lower(), self.version)) + self.surf_dir = os.path.join(self.vmddir, 'lib', 'surf') + self.stride_dir = os.path.join(self.vmddir, 'lib', 'stride') + + def extract_step(self): + """Custom extract step for VMD.""" + super(EB_VMD, self).extract_step() + + if LooseVersion(self.version) >= LooseVersion("1.9.3"): + change_dir(self.surf_dir) + srcdir = extract_file('surf.tar.Z', os.getcwd(), change_into_dir=False) + change_dir(srcdir) + + def configure_step(self): + """ + Configure VMD for building. + """ + # make sure required dependencies are available + deps = {} + for dep in ['FLTK', 'OpenGL', 'netCDF', 'Python', 'Tcl', 'Tk']: + deps[dep] = get_software_root(dep) + if deps[dep] is None: + raise EasyBuildError("Required dependency %s is missing", dep) + + # optional dependencies + for dep in ['ACTC', 'CUDA', 'OptiX']: + deps[dep] = get_software_root(dep) + + # specify Tcl/Tk locations & libraries + tclinc = os.path.join(deps['Tcl'], 'include') + tcllib = os.path.join(deps['Tcl'], 'lib') + env.setvar('TCL_INCLUDE_DIR', tclinc) + env.setvar('TCL_LIBRARY_DIR', tcllib) + + env.setvar('TK_INCLUDE_DIR', os.path.join(deps['Tk'], 'include')) + env.setvar('TK_LIBRARY_DIR', os.path.join(deps['Tk'], 'lib')) + + tclshortver = '.'.join(get_software_version('Tcl').split('.')[:2]) + self.cfg.update('buildopts', 'TCLLDFLAGS="-ltcl%s"' % tclshortver) + + # Netcdf locations + netcdfinc = os.path.join(deps['netCDF'], 'include') + netcdflib = os.path.join(deps['netCDF'], 'lib') + + # Python locations + pymajver = get_software_version('Python').split('.')[0] + out, ec = run_cmd("python -c 'import sysconfig; print(sysconfig.get_path(\"include\"))'", simple=False) + if ec: + raise EasyBuildError("Failed to determine Python include path: %s", out) + else: + env.setvar('PYTHON_INCLUDE_DIR', out.strip()) + pylibdir = det_pylibdir() + python_libdir = os.path.join(deps['Python'], os.path.dirname(pylibdir)) + env.setvar('PYTHON_LIBRARY_DIR', python_libdir) + out, ec = run_cmd("python%s-config --libs" % pymajver, simple=False) + if ec: + raise EasyBuildError("Failed to determine Python library name: %s", out) + else: + env.setvar('PYTHON_LIBRARIES', out.strip()) + + # numpy include location, easiest way to determine it is via numpy.get_include() + out, ec = run_cmd("python -c 'import numpy; print(numpy.get_include())'", simple=False) + if ec: + raise EasyBuildError("Failed to determine numpy include directory: %s", out) + else: + env.setvar('NUMPY_INCLUDE_DIR', out.strip()) + + # compiler commands + self.cfg.update('buildopts', 'CC="%s"' % os.getenv('CC')) + self.cfg.update('buildopts', 'CCPP="%s"' % os.getenv('CXX')) + + # plugins need to be built first (see http://www.ks.uiuc.edu/Research/vmd/doxygen/compiling.html) + change_dir(os.path.join(self.builddir, 'plugins')) + cmd = ' '.join([ + 'make', + 'LINUXAMD64', + "TCLINC='-I%s'" % tclinc, + "TCLLIB='-L%s'" % tcllib, + "TCLLDFLAGS='-ltcl%s'" % tclshortver, + "NETCDFINC='-I%s'" % netcdfinc, + "NETCDFLIB='-L%s'" % netcdflib, + self.cfg['buildopts'], + ]) + run_cmd(cmd, log_all=True, simple=False) + + # create plugins distribution + plugindir = os.path.join(self.vmddir, 'plugins') + env.setvar('PLUGINDIR', plugindir) + self.log.info("Generating VMD plugins in %s", plugindir) + run_cmd("make distrib %s" % self.cfg['buildopts'], log_all=True, simple=False) + + # explicitely mention whether or not we're building with CUDA/OptiX support + if deps['CUDA']: + self.log.info("Building with CUDA %s support", get_software_version('CUDA')) + if deps['OptiX']: + self.log.info("Building with Nvidia OptiX %s support", get_software_version('OptiX')) + else: + self.log.warn("Not building with Nvidia OptiX support!") + else: + self.log.warn("Not building with CUDA nor OptiX support!") + + # see http://www.ks.uiuc.edu/Research/vmd/doxygen/configure.html + # LINUXAMD64: Linux 64-bit + # LP64: build VMD as 64-bit binary + # IMD: enable support for Interactive Molecular Dynamics (e.g. to connect to NAMD for remote simulations) + # PTHREADS: enable support for POSIX threads + # COLVARS: enable support for collective variables (related to NAMD/LAMMPS) + # NOSILENT: verbose build command + # FLTK: enable the standard FLTK GUI + # TK: enable TK to support extension GUI elements + # OPENGL: enable OpenGL + self.cfg.update( + 'configopts', "LINUXAMD64 LP64 IMD PTHREADS COLVARS NOSILENT FLTK TK OPENGL", allow_duplicate=False) + + # add additional configopts based on available dependencies + for key in deps: + if deps[key]: + if key == 'Mesa' or key == 'OpenGL': + self.cfg.update('configopts', "OPENGL MESA", allow_duplicate=False) + elif key == 'OptiX': + self.cfg.update('configopts', "LIBOPTIX", allow_duplicate=False) + elif key == 'Python': + self.cfg.update('configopts', "PYTHON NUMPY", allow_duplicate=False) + else: + self.cfg.update('configopts', key.upper(), allow_duplicate=False) + + # configure for building with Intel compilers specifically + if self.toolchain.comp_family() == toolchain.INTELCOMP: + self.cfg.update('configopts', 'ICC', allow_duplicate=False) + + # specify install location using environment variables + env.setvar('VMDINSTALLBINDIR', os.path.join(self.installdir, 'bin')) + env.setvar('VMDINSTALLLIBRARYDIR', os.path.join(self.installdir, 'lib')) + + # configure in vmd-<version> directory + change_dir(self.vmddir) + run_cmd("%s ./configure %s" % (self.cfg['preconfigopts'], self.cfg['configopts'])) + + # change to 'src' subdirectory, ready for building + change_dir(os.path.join(self.vmddir, 'src')) + + def build_step(self): + """Custom build step for VMD.""" + super(EB_VMD, self).build_step() + + self.have_stride = False + # Build Surf, which is part of VMD as of VMD version 1.9.3 + if LooseVersion(self.version) >= LooseVersion("1.9.3"): + change_dir(self.surf_dir) + surf_build_cmd = 'make CC="%s" OPT="%s"' % (os.environ['CC'], os.environ['CFLAGS']) + run_cmd(surf_build_cmd) + # Build Stride if it was downloaded + if os.path.exists(os.path.join(self.stride_dir, 'Makefile')): + change_dir(self.stride_dir) + self.have_stride = True + stride_build_cmd = 'make CC="%s" CFLAGS="%s"' % (os.environ['CC'], os.environ['CFLAGS']) + run_cmd(stride_build_cmd) + else: + self.log.info("Stride has not been downloaded and/or unpacked.") + + def install_step(self): + """Custom build step for VMD.""" + + # Install must also be done in 'src' subdir + change_dir(os.path.join(self.vmddir, 'src')) + super(EB_VMD, self).install_step() + + if LooseVersion(self.version) >= LooseVersion("1.9.3"): + surf_bin = os.path.join(self.surf_dir, 'surf') + copy_file(surf_bin, os.path.join(self.installdir, 'lib', 'surf_LINUXAMD64')) + if self.have_stride: + stride_bin = os.path.join(self.stride_dir, 'stride') + copy_file(stride_bin, os.path.join(self.installdir, 'lib', 'stride_LINUXAMD64')) + + def sanity_check_step(self): + """Custom sanity check for VMD.""" + custom_paths = { + 'files': ['bin/vmd'], + 'dirs': ['lib'], + } + super(EB_VMD, self).sanity_check_step(custom_paths=custom_paths) diff --git a/Golden_Repo/a/ACTC/ACTC-1.1-GCCcore-9.3.0.eb b/Golden_Repo/a/ACTC/ACTC-1.1-GCCcore-9.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..0fadef8caee1892531f945a1893cf8de6c34ffea --- /dev/null +++ b/Golden_Repo/a/ACTC/ACTC-1.1-GCCcore-9.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'MakeCp' + +name = 'ACTC' +version = '1.1' + +homepage = 'https://sourceforge.net/projects/actc' +description = "ACTC converts independent triangles into triangle strips or fans." + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['3a1303291629b9de6008c3c9d7b020a4b854802408fb3f8222ec492808c8b44d'] + +builddependencies = [('binutils', '2.34')] + +buildopts = 'CC="$CC" CFLAGS="$CFLAGS"' + +files_to_copy = [ + (['tcsample', 'tctest', 'tctest2'], 'bin'), + (['tc.h'], 'include/ac'), + (['libactc.a'], 'lib'), + 'COPYRIGHT', 'manual.html', 'prims.gif', 'README', +] + +sanity_check_paths = { + 'files': ['bin/tctest', 'bin/tctest2', 'bin/tcsample', 'include/ac/tc.h', 'lib/libactc.a', + 'COPYRIGHT', 'manual.html', 'prims.gif', 'README'], + 'dirs': [], +} + +modextrapaths = {'CPATH': 'include/ac'} + +moduleclass = 'lib' diff --git a/Golden_Repo/a/AMBER/AMBER-20-gpsmpi-2020.eb b/Golden_Repo/a/AMBER/AMBER-20-gpsmpi-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..383b3a7b9c89af37452ca8da9bc9838595a61346 --- /dev/null +++ b/Golden_Repo/a/AMBER/AMBER-20-gpsmpi-2020.eb @@ -0,0 +1,76 @@ +easyblock = 'CMakeMake' + +name = 'AMBER' +version = '20' + +homepage = 'http://ambermd.org' +description = """ +AMBER: 'Assisted Model Building with Energy Refinement' is a set of molecular +mechanics force fields and a package of molecular simulation programs. + +Citation: +D.A. Case, K. Belfon, I.Y. Ben-Shalom, S.R. Brozell, D.S. Cerutti, +T.E. Cheatham, III, V.W.D. Cruzeiro, T.A. Darden, R.E. Duke, G. Giambasu, +M.K. Gilson, H. Gohlke, A.W. Goetz, R. Harris, S. Izadi, S.A. Izmailov, +K. Kasavajhala, A. Kovalenko, R. Krasny, T. Kurtzman, T.S. Lee, S. LeGrand, +P. Li, C. Lin, J. Liu, T. Luchko, R. Luo, V. Man, K.M. Merz, Y. Miao, +O. Mikhailovskii, G. Monard, H. Nguyen, A. Onufriev, F.Pan, S. Pantano, +R. Qi, D.R. Roe, A. Roitberg, C. Sagui, S. Schott-Verdugo, J. Shen, +C. Simmerling, N.R.Skrynnikov, J. Smith, J. Swails, R.C. Walker, J. Wang, +L. Wilson, R.M. Wolf, X. Wu, Y. Xiong, Y. Xue, D.M. York +and P.A. Kollman (2020), +AMBER 2020, University of California, San Francisco. +""" + +site_contacts = 'Sandipan Mohanty <s.mohanty@fz-juelich.de>' + +toolchain = {'name': 'gpsmpi', 'version': '2020'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('CMake', '3.18.0'), + ('binutils', '2.34',), +] +dependencies = [ + ('CMake', '3.18.0'), + ('FFTW', '3.3.8'), + ('Python', '3.8.5'), + ('flex', '2.6.4', '', True), +] + +sources = [ + 'AmberTools20.tar.bz2', + 'Amber20.tar.bz2', +] + +separate_build_dir = True +local_build_mpi_parts = "TRUE" +local_build_cuda_parts = "TRUE" + +preconfigopts = "CC=gcc && CXX=g++ && COMPILER=GNU " +preconfigopts += " && cd %(builddir)s/amber20_src && " +preconfigopts += " ./update_amber --update && cd ../easybuild_obj && " + +configopts = "-DCOMPILER=GNU -DCHECK_UPDATES=OFF -DAPPLY_UPDATES=OFF " +configopts += " -DINSTALL_TESTS=TRUE -DMPI=%s " % local_build_mpi_parts +configopts += " -DDOWNLOAD_MINICONDA=TRUE -DMINICONDA_USE_PY3=TRUE " +configopts += " -DCUDA=%s " % local_build_cuda_parts + +modextravars = { + 'AMBERHOME': '%(installdir)s/', +} + +modluafooter = ''' +add_property("arch","gpu") +''' + +group = "amber" + +modloadmsg = ''' +The access to this software is restricted to members of the group "amber". +The JSC has a site licence for academic users. If you would like to get +access please see: +"http://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/Chemistry/AmberConfirmationOfLicence.html" +''' + +moduleclass = 'bio' diff --git a/Golden_Repo/b/Boost.Python/Boost.Python-1.74.0-GCCcore-9.3.0-nompi.eb b/Golden_Repo/b/Boost.Python/Boost.Python-1.74.0-GCCcore-9.3.0-nompi.eb new file mode 100644 index 0000000000000000000000000000000000000000..abc7d80c552d19c4b64c9a01c1545fc1cbfa95ee --- /dev/null +++ b/Golden_Repo/b/Boost.Python/Boost.Python-1.74.0-GCCcore-9.3.0-nompi.eb @@ -0,0 +1,27 @@ +easyblock = 'EB_Boost' + +name = 'Boost.Python' +version = '1.74.0' +versionsuffix = '-nompi' + +homepage = 'https://boostorg.github.io/python' +description = """Boost.Python is a C++ library which enables seamless interoperability between C++ + and the Python programming language.""" + +site_contacts = 'sc@fz-juelich.de' + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://dl.bintray.com/boostorg/release/%(version)s/source/'] +sources = ['boost_%s.tar.gz' % '_'.join(version.split('.'))] +patches = ['Boost-1.71.0_fix-Python3.patch'] + +dependencies = [ + ('Boost', version, versionsuffix), + ('Python', '3.8.5') +] + +only_python_bindings = True + +moduleclass = 'lib' diff --git a/Golden_Repo/b/Boost/Boost-1.74.0-GCCcore-9.3.0-nompi.eb b/Golden_Repo/b/Boost/Boost-1.74.0-GCCcore-9.3.0-nompi.eb new file mode 100644 index 0000000000000000000000000000000000000000..eed7d1cf0088cb7726ef423a886160ff08350220 --- /dev/null +++ b/Golden_Repo/b/Boost/Boost-1.74.0-GCCcore-9.3.0-nompi.eb @@ -0,0 +1,32 @@ +name = 'Boost' +version = '1.74.0' +versionsuffix = '-nompi' + +homepage = 'https://www.boost.org/' +description = """Boost provides free peer-reviewed portable C++ source libraries.""" + +site_contacts = 'sc@fz-juelich.de' + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True, 'cstd': 'c++11'} + +source_urls = ['https://dl.bintray.com/boostorg/release/%(version)s/source/'] +sources = ['%%(namelower)s_%s.tar.gz' % '_'.join(version.split('.'))] + +builddependencies = [ + ('binutils', '2.34'), +] + +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.2.11'), + ('XZ', '5.2.5'), + ('ICU', '67.1'), +] + +configopts = '--without-libraries=python' + +# do not build boost_mpi +boost_mpi = False + +moduleclass = 'devel' diff --git a/Golden_Repo/c/CMake/CMake-3.18.0.eb b/Golden_Repo/c/CMake/CMake-3.18.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..71cfad55d538d6ed6f1d981b4d20f11aa74be75f --- /dev/null +++ b/Golden_Repo/c/CMake/CMake-3.18.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'CMake' +version = '3.18.0' + +homepage = 'http://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. +""" + +site_contacts = 'a.strube@fz-juelich.de' + +toolchain = SYSTEM + +source_urls = ['http://www.cmake.org/files/v%(version_major_minor)s'] +sources = [SOURCELOWER_TAR_GZ] + +configopts = '-- -DCMAKE_USE_OPENSSL=1 -DCMAKE_PREFIX_PATH=$EBROOTNCURSES' + +builddependencies = [ + ('binutils', '2.34'), +] + +dependencies = [ + ('ncurses', '6.2'), + # 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.0.1p'), +] + +osdependencies = [('openssl-devel', 'libssl-dev', 'libopenssl-devel')] + +sanity_check_paths = { + 'files': ["bin/%s" % x for x in ['cmake', 'cpack', 'ctest']], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/Golden_Repo/c/CVXOPT/CVXOPT-1.2.1-fix-setup-py.patch b/Golden_Repo/c/CVXOPT/CVXOPT-1.2.1-fix-setup-py.patch new file mode 100644 index 0000000000000000000000000000000000000000..5975c4bb3289692195062ef9c552f1b6d2373f75 --- /dev/null +++ b/Golden_Repo/c/CVXOPT/CVXOPT-1.2.1-fix-setup-py.patch @@ -0,0 +1,128 @@ +# Patches the setup.py to use EB settings for BLAS/LAPACK, FFTW, etc +# original by wpoely86@gmail.com, ported to v1.2.1 by Kenneth Hoste (HPC-UGent) +--- cvxopt-1.2.1/setup.py.orig 2018-08-30 19:54:12.000000000 +0200 ++++ cvxopt-1.2.1/setup.py 2018-10-02 16:28:57.252340779 +0200 +@@ -91,9 +91,11 @@ + LAPACK_LIB = os.environ.get("CVXOPT_LAPACK_LIB",LAPACK_LIB) + BLAS_LIB_DIR = os.environ.get("CVXOPT_BLAS_LIB_DIR",BLAS_LIB_DIR) + BLAS_EXTRA_LINK_ARGS = os.environ.get("CVXOPT_BLAS_EXTRA_LINK_ARGS",BLAS_EXTRA_LINK_ARGS) ++FFTW_EXTRA_LINK_ARGS = os.environ.get("CVXOPT_FFTW_EXTRA_LINK_ARGS",'') + if type(BLAS_LIB) is str: BLAS_LIB = BLAS_LIB.strip().split(';') + if type(LAPACK_LIB) is str: LAPACK_LIB = LAPACK_LIB.strip().split(';') +-if type(BLAS_EXTRA_LINK_ARGS) is str: BLAS_EXTRA_LINK_ARGS = BLAS_EXTRA_LINK_ARGS.strip().split(';') ++if type(BLAS_EXTRA_LINK_ARGS) is str: BLAS_EXTRA_LINK_ARGS = BLAS_EXTRA_LINK_ARGS.strip().split(' ') ++if type(FFTW_EXTRA_LINK_ARGS) is str: FFTW_EXTRA_LINK_ARGS = FFTW_EXTRA_LINK_ARGS.strip().split(' ') + BUILD_GSL = int(os.environ.get("CVXOPT_BUILD_GSL",BUILD_GSL)) + GSL_LIB_DIR = os.environ.get("CVXOPT_GSL_LIB_DIR",GSL_LIB_DIR) + GSL_INC_DIR = os.environ.get("CVXOPT_GSL_INC_DIR",GSL_INC_DIR) +@@ -126,7 +128,7 @@ + # optional modules + + if BUILD_GSL: +- gsl = Extension('gsl', libraries = M_LIB + ['gsl'] + BLAS_LIB, ++ gsl = Extension('gsl', libraries = M_LIB + ['gsl'], + include_dirs = [ GSL_INC_DIR ], + library_dirs = [ GSL_LIB_DIR, BLAS_LIB_DIR ], + define_macros = GSL_MACROS, +@@ -135,11 +137,11 @@ + extmods += [gsl]; + + if BUILD_FFTW: +- fftw = Extension('fftw', libraries = ['fftw3'] + BLAS_LIB, ++ fftw = Extension('fftw', + include_dirs = [ FFTW_INC_DIR ], + library_dirs = [ FFTW_LIB_DIR, BLAS_LIB_DIR ], + define_macros = FFTW_MACROS, +- extra_link_args = BLAS_EXTRA_LINK_ARGS, ++ extra_link_args = BLAS_EXTRA_LINK_ARGS + FFTW_EXTRA_LINK_ARGS, + sources = ['src/C/fftw.c'] ) + extmods += [fftw]; + +@@ -151,7 +153,7 @@ + extmods += [glpk]; + + if BUILD_DSDP: +- dsdp = Extension('dsdp', libraries = ['dsdp'] + LAPACK_LIB + BLAS_LIB, ++ dsdp = Extension('dsdp', libraries = ['dsdp'], + include_dirs = [ DSDP_INC_DIR ], + library_dirs = [ DSDP_LIB_DIR, BLAS_LIB_DIR ], + extra_link_args = BLAS_EXTRA_LINK_ARGS, +@@ -160,19 +162,19 @@ + + # Required modules + +-base = Extension('base', libraries = M_LIB + LAPACK_LIB + BLAS_LIB, ++base = Extension('base', + library_dirs = [ BLAS_LIB_DIR ], + define_macros = MACROS, + extra_link_args = BLAS_EXTRA_LINK_ARGS, + sources = ['src/C/base.c','src/C/dense.c','src/C/sparse.c']) + +-blas = Extension('blas', libraries = BLAS_LIB, ++blas = Extension('blas', + library_dirs = [ BLAS_LIB_DIR ], + define_macros = MACROS, + extra_link_args = BLAS_EXTRA_LINK_ARGS, + sources = ['src/C/blas.c'] ) + +-lapack = Extension('lapack', libraries = LAPACK_LIB + BLAS_LIB, ++lapack = Extension('lapack', + library_dirs = [ BLAS_LIB_DIR ], + define_macros = MACROS, + extra_link_args = BLAS_EXTRA_LINK_ARGS, +@@ -180,9 +182,10 @@ + + if not SUITESPARSE_SRC_DIR: + umfpack = Extension('umfpack', +- libraries = ['umfpack','cholmod','amd','colamd','suitesparseconfig'] + LAPACK_LIB + BLAS_LIB + RT_LIB, ++ libraries = ['umfpack','cholmod','amd','colamd','suitesparseconfig'] + RT_LIB, + include_dirs = [SUITESPARSE_INC_DIR], + library_dirs = [SUITESPARSE_LIB_DIR, BLAS_LIB_DIR], ++ extra_link_args = BLAS_EXTRA_LINK_ARGS, + sources = ['src/C/umfpack.c']) + else: + umfpack = Extension('umfpack', +@@ -193,7 +196,6 @@ + SUITESPARSE_SRC_DIR + '/SuiteSparse_config' ], + library_dirs = [ BLAS_LIB_DIR ], + define_macros = MACROS + [('NTIMER', '1'), ('NCHOLMOD', '1')], +- libraries = LAPACK_LIB + BLAS_LIB, + extra_compile_args = UMFPACK_EXTRA_COMPILE_ARGS, + extra_link_args = BLAS_EXTRA_LINK_ARGS, + sources = [ 'src/C/umfpack.c', +@@ -206,14 +208,13 @@ + + if not SUITESPARSE_SRC_DIR: + cholmod = Extension('cholmod', +- libraries = ['cholmod','colamd','amd','suitesparseconfig'] + LAPACK_LIB + BLAS_LIB + RT_LIB, ++ libraries = ['cholmod','colamd','amd','suitesparseconfig'] + RT_LIB, + include_dirs = [SUITESPARSE_INC_DIR], + library_dirs = [SUITESPARSE_LIB_DIR, BLAS_LIB_DIR], + sources = [ 'src/C/cholmod.c' ]) + else: + cholmod = Extension('cholmod', + library_dirs = [ BLAS_LIB_DIR ], +- libraries = LAPACK_LIB + BLAS_LIB, + include_dirs = [ SUITESPARSE_SRC_DIR + '/CHOLMOD/Include', + SUITESPARSE_SRC_DIR + '/COLAMD', + SUITESPARSE_SRC_DIR + '/AMD/Include', +@@ -235,17 +236,18 @@ + libraries = ['amd','suitesparseconfig'] + RT_LIB, + include_dirs = [SUITESPARSE_INC_DIR], + library_dirs = [SUITESPARSE_LIB_DIR], ++ extra_link_args = BLAS_EXTRA_LINK_ARGS, + sources = ['src/C/amd.c']) + else: + amd = Extension('amd', + include_dirs = [SUITESPARSE_SRC_DIR + '/AMD/Include', + SUITESPARSE_SRC_DIR + '/SuiteSparse_config' ], + define_macros = MACROS + [('NTIMER', '1')], ++ extra_link_args = BLAS_EXTRA_LINK_ARGS, + sources = [ 'src/C/amd.c', SUITESPARSE_SRC_DIR + '/SuiteSparse_config/SuiteSparse_config.c'] + + glob(SUITESPARSE_SRC_DIR + '/AMD/Source/*.c') ) + + misc_solvers = Extension('misc_solvers', +- libraries = LAPACK_LIB + BLAS_LIB, + library_dirs = [ BLAS_LIB_DIR ], + define_macros = MACROS, + extra_link_args = BLAS_EXTRA_LINK_ARGS, diff --git a/Golden_Repo/c/CVXOPT/CVXOPT-1.2.5-gpsmkl-2020-Python-3.8.5.eb b/Golden_Repo/c/CVXOPT/CVXOPT-1.2.5-gpsmkl-2020-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..59c5d190ee45a32124b9c7c25bb585ddb3210892 --- /dev/null +++ b/Golden_Repo/c/CVXOPT/CVXOPT-1.2.5-gpsmkl-2020-Python-3.8.5.eb @@ -0,0 +1,46 @@ +easyblock = 'PythonPackage' + +name = 'CVXOPT' +version = '1.2.5' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://cvxopt.org' +description = """CVXOPT is a free software package for convex optimization based on the Python programming language. + Its main purpose is to make the development of software for convex optimization applications straightforward by + building on Python's extensive standard library and on the strengths of Python as a high-level programming language. +""" + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'gpsmkl', 'version': '2020'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +patches = ['CVXOPT-1.2.1-fix-setup-py.patch'] +checksums = [ + '94ec8c36bd6628a11de9014346692daeeef99b3b7bae28cef30c7490bbcb2d72', # cvxopt-1.2.5.tar.gz + '85d8475098895e9af45f330489a712b5b944489c5fb4a6c67f59bef8fed4303d', # CVXOPT-1.2.1-fix-setup-py.patch +] + +builddependencies = [ + ('binutils', '2.34'), +] + +dependencies = [ + ('Python', '3.8.5'), + ('SuiteSparse', '5.7.1', '-CUDA'), + ('GSL', '2.6'), +] + +download_dep_fail = True +use_pip = True + +preinstallopts = 'CVXOPT_BUILD_FFTW=1 CVXOPT_BUILD_GSL=1 CVXOPT_BLAS_EXTRA_LINK_ARGS="$LIBLAPACK" ' +preinstallopts += 'CVXOPT_FFTW_EXTRA_LINK_ARGS="$LIBFFT" CVXOPT_SUITESPARSE_SRC_DIR=$EBROOTSUITESPARSE' + +installopts = ' --no-binary cvxopt' + +sanity_check_commands = ['nosetests'] + +moduleclass = 'math' diff --git a/Golden_Repo/c/Cirq/Cirq-0.9.1-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb b/Golden_Repo/c/Cirq/Cirq-0.9.1-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..f8bfa5a865f9e90e564222fd8cfe871843b905c3 --- /dev/null +++ b/Golden_Repo/c/Cirq/Cirq-0.9.1-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb @@ -0,0 +1,99 @@ +easyblock = 'PythonBundle' + +name = 'Cirq' +version = '0.9.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/quantumlib/cirq' +description = """A python framework for creating, editing, +and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.""" + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} +toolchainopts = {'pic': True} + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix), + ('protobuf', '3.12.4'), + ('texlive', '20200406'), +] + +local_common_opts = { + 'req_py_majver': '3', + 'req_py_minver': '0' +} + +exts_default_options = { + 'download_dep_fail': True, + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'use_pip_for_deps': False, + 'sanity_pip_check': True, +} + +exts_list = [ + ('cachetools', '4.1.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'bbaa39c3dede00175df2dc2b03d0cf18dd2d32a7de7beb68072d13043c9edb20')]), + ])), + ('pyasn1-modules', '0.2.8', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e')]), + ])), + ('rsa', '4.6', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '109ea5a66744dd859bf16fe904b8d8b627adafb9408753161e766a92e7d681fa')]), + ])), + ('google-auth', '1.23.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '5176db85f1e7e837a646cd9cede72c3c404ccf2e3373d9ee14b2db88febad440')]), + ('modulename', 'google.auth'), + ])), + ('googleapis-common-protos', '1.52.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '560716c807117394da12cecb0a54da5a451b5cf9866f1d37e9a5e2329a665351')]), + ('modulename', 'googleapiclient') + ])), + ('grpcio', '1.33.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '21265511880056d19ce4f809ce3fbe2a3fa98ec1fc7167dbdf30a80d3276202e')]), + ('modulename', 'grpc') + ])), + ('google-api-core', '1.23.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '1bb3c485c38eacded8d685b1759968f6cf47dd9432922d34edb90359eaa391e2')]), + ('modulename', 'google'), + ])), + ('httplib2', '0.18.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '8af66c1c52c7ffe1aa5dc4bcd7c769885254b0756e6e69f953c7f0ab49a70ba3')]), + ])), + ('uritemplate', '3.0.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '5af8ad10cec94f215e3f48112de2022e1d5a37ed427fbd88652fa908f2ab7cae')]), + ])), + ('google-auth-httplib2', '0.0.4', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '8d092cc60fb16517b12057ec0bba9185a96e3b7169d86ae12eae98e645b7bc39')]), + ])), + ('google-api-python-client', '1.12.5', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '1892cd490d164e5ec2f2168dc3b4fa0af68f36ca15a88b91bca1826b3d4f2829')]), + ('modulename', 'googleapiclient'), + ])), + ('typing_extensions', '3.7.4.3', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '99d4073b617d30288f569d3f13d2bd7548c3a7e4c8de87db09a9d29bb3a4a60c')]), + ])), + ('sortedcontainers', '2.2.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '4e73a757831fc3ca4de2859c422564239a31d8213d09a2a666e375807034d2ba')]), + ])), + ('networkx', '2.5', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '7978955423fbc9639c10498878be59caf99b44dc304c2286162fd24b458c1602')]), + ])), + ('freezegun', '0.3.15', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'e2062f2c7f95cc276a834c22f1a17179467176b624cc6f936e8bc3be5535ad1b')]), + ])), + ('protobuf', '3.12.4', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'c99e5aea75b6f2b29c8d8da5bdc5f5ed8d9a5b4f15115c8316a3f0a850f94656')]), + ('modulename', 'google.protobuf') + ])), + ('cirq', version, dict(list(local_common_opts.items()) + [ + ('source_tmpl', 'cirq-%(version)s-py3-none-any.whl'), + ('checksums', [('sha256', 'd900b861f2132a673b511b22ec80955cedec34c1bfa95d8f39cdc1eab5309242')]), + ('use_pip', True), + ('unpack_sources', False), + ])), +] + +moduleclass = 'quantum' diff --git a/Golden_Repo/d/DWave/DWave-3.2.0-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb b/Golden_Repo/d/DWave/DWave-3.2.0-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..6fb629051b036b532cd2a692ea05a1f66b20e56d --- /dev/null +++ b/Golden_Repo/d/DWave/DWave-3.2.0-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb @@ -0,0 +1,139 @@ +easyblock = 'PythonBundle' + +name = 'DWave' +version = '3.2.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://docs.ocean.dwavesys.com' +description = """Ocean software is a suite of tools D-Wave Systems for solving hard problems with quantum computers.""" + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} +toolchainopts = {'pic': True} + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix), + ('Boost.Python', '1.74.0', '-nompi'), + ('protobuf', '3.13.0'), +] + +local_common_opts = { + 'req_py_majver': '3', + 'req_py_minver': '0' +} + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'sanity_pip_check': True, + 'download_dep_fail': True, + 'use_pip_for_deps': False, +} + +exts_list = [ + ('plucky', '0.4.3', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '5bc75d43ae6b40f1b7ba42000b37e4934fa6bd2d6a6cd4e47461f803a404c194')]), + ])), + ('homebase', '1.0.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '9ee008df4298b420852d815e6df488822229c4bd8d571bcd0a454e04232c635e')]), + ])), + ('dwave-cloud-client', '0.8.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '5472aa523311380bdb5b4e659d127d4fc7acdef73e03234df23890972be2fca3')]), + ('modulename', 'dwave.cloud'), + ])), + ('dwave_networkx', '0.8.8', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '9d6bb1f93d89511aeaa191319da9970e48134a4dccecff59c972e8f1f3107387')]), + ('modulename', 'dwave_networkx'), + ])), + ('dwave-system', '1.3.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'ec1283592211016b30587c67837b23898a74b809de6d715447ff2822798b26f1')]), + ('modulename', 'dwave.system'), + ])), + ('dwave-qbsolv', '0.3.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'aca74f909748cd02d3e59647ae6c81585dd75afcf53a19fa116580c7c7873782')]), + ('modulename', 'dwave_qbsolv'), + ])), + ('dwave-hybrid', '0.6.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'd8b195dabe9e630c31bb9e3362d1cb6d3fab933b94d175719cd3771e346d5934')]), + ('modulename', 'hybrid'), + ])), + ('dwave-neal', '0.5.7', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '86da2141f81ade1e69d595a9840222a45c47b19577c037ef3d4988b5463c26f8')]), + ('modulename', 'neal'), + ])), + ('dimod', '0.9.13', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'a9ab210a2737199b824191089e71fa669b2760b168d0f7ad5aaa7fddcada933f')]), + ])), + ('dwavebinarycsp', '0.1.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'bf2000c2738df2b3924470f080e73c42e7246b5137fdedc7a2627d5e08479bdf')]), + ])), + ('fasteners', '0.16', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'c995d8c26b017c5d6a6de9ad29a0f9cdd57de61ae1113d28fac26622b06a0933')]), + ])), + ('minorminer', '0.2.5', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '3a521099ec64c99295ae8205b08da29c06aad81d3be74fb27a58d22e220a2a33')]), + ])), + ('penaltymodel', '0.16.4', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'e2d9e94154a675b33db59dadb9856ee4c8bc1aee1647c664df1b17bc53b04f2a')]), + ])), + ('penaltymodel-cache', '0.4.3', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '93b76ba83e9b39bca705c341b5e925f4ff5841c20f3e5fac962304656f1ec66e')]), + ('modulename', 'penaltymodel.cache') + ])), + ('penaltymodel-lp', '0.1.4', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '044ec3a12f78003b044c05b66e9597131bcbb47d775db03dba2d1dc45d2f0efb')]), + ('modulename', 'penaltymodel.lp') + ])), + ('protobuf', '3.13.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '6a82e0c8bb2bf58f606040cc5814e07715b2094caeba281e2e7d0b0e2e397db5')]), + ('modulename', 'google.protobuf') + ])), + ('ortools', '8.0.8283', dict(list(local_common_opts.items()) + [ + ('source_tmpl', 'ortools-8.0.8283-cp38-cp38-manylinux1_x86_64.whl'), + ('checksums', [('sha256', '31020d0b46c8e4ff7d920803c3bb5cbfc5630d319b9b46f70de8d18f9456e9c9')]), + ('unpack_sources', False), + ])), + ('penaltymodel-mip', '0.2.4', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'c3471a8f10107b163ab0035125fe861a3c55808e7656db9ed524451667ff1e38')]), + ('modulename', 'penaltymodel.mip') + ])), + ('wrapt', '1.12.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7')]), + ])), + ('Deprecated', '1.2.10', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '525ba66fb5f90b07169fdd48b6373c18f1ee12728ca277ca44567a367d9d7f74')]), + ])), + ('pyqubo', '1.0.7', dict(list(local_common_opts.items()) + [ + ('source_tmpl', 'pyqubo-1.0.7-cp38-cp38-manylinux1_x86_64.whl'), + ('checksums', [('sha256', '79dfd9a7f2f75a216838e357959b321d55ced7cdf4559037a4704d2f2927f6ba')]), + ('unpack_sources', False), + ])), + ('importlib_resources', '1.0.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'd3279fd0f6f847cced9f7acc19bd3e5df54d34f93a2e7bb5f238f81545787078')]), + ])), + ('dwave-inspector', '0.2.4', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'b596e3cc0055e373e0955b402e1ee43998e0ceb2968e09eeb8a194c67b080e38')]), + ('modulename', 'dwave.inspector'), + ])), + ('dwave-tabu', '0.3.1', dict(list(local_common_opts.items()) + [ + ('source_tmpl', 'dwave_tabu-0.3.1-cp38-cp38-manylinux1_x86_64.whl'), + ('checksums', [('sha256', '6a57c6e0c6d6dce912d36c2c183a2a841c1f2830fab7434ddb912e5200d7dc2f')]), + ('unpack_sources', False), + ('modulename', 'tabu'), + ])), + ('dwave-greedy', '0.1.2', dict(list(local_common_opts.items()) + [ + ('source_tmpl', 'dwave_greedy-0.1.2-cp38-cp38-manylinux1_x86_64.whl'), + ('checksums', [('sha256', '88cdb3897159880d02b6e5880285b2b5a5295c3a725ce7c990ce4e72c21724ac')]), + ('unpack_sources', False), + ('modulename', 'greedy'), + ])), + ('dwave-ocean-sdk', version, dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'a8a5e0acbd7483f62f65beb6f2fdb397d5370e20df949434521cae0635d954e9')]), + ('skipsteps', ['sanitycheck']), + ('modulename', 'dwave.system'), # just a fake for sanity-check + ])), +] + +moduleclass = 'quantum' diff --git a/Golden_Repo/d/darshan-runtime/darshan-runtime-3.2.1-gpsmpi-2020.eb b/Golden_Repo/d/darshan-runtime/darshan-runtime-3.2.1-gpsmpi-2020.eb index 53a8d1318053189272ff024b9c965b91810f41a5..e691c5c2f9da15b733a0722effdb5c67b0f80305 100644 --- a/Golden_Repo/d/darshan-runtime/darshan-runtime-3.2.1-gpsmpi-2020.eb +++ b/Golden_Repo/d/darshan-runtime/darshan-runtime-3.2.1-gpsmpi-2020.eb @@ -44,7 +44,8 @@ sources = ['ftp://ftp.mcs.anl.gov/pub/darshan/releases/darshan-%s.tar.gz' % vers local_subpath = 'darshan-runtime' preconfigopts = 'cd %s;' % local_subpath -configopts = '--with-mem-align=8 --with-log-path-by-env=DARSHAN_LOG_PATH --with-jobid-env=SLURM_JOBID CC=mpicc' +configopts = '--with-mem-align=8 --with-log-path-by-env=DARSHAN_LOG_PATH ' +configopts += ' --with-jobid-env=SLURM_JOBID CC=mpicc --enable-hdf5-mod=$EBROOTHDF5' prebuildopts = 'cd %s;' % local_subpath @@ -55,4 +56,9 @@ sanity_check_paths = { 'dirs': [] } +dependencies = [ + ("HDF5", "1.10.6"), +] + + moduleclass = 'lib' diff --git a/Golden_Repo/d/darshan-util/darshan-util-3.2.1-gpsmpi-2020.eb b/Golden_Repo/d/darshan-util/darshan-util-3.2.1-gpsmpi-2020.eb index a228a573ff435ddd531a61ff0b65f132b9463848..632405aa38966531ce2d859f66b52b01aa23e5fe 100644 --- a/Golden_Repo/d/darshan-util/darshan-util-3.2.1-gpsmpi-2020.eb +++ b/Golden_Repo/d/darshan-util/darshan-util-3.2.1-gpsmpi-2020.eb @@ -47,6 +47,8 @@ prebuildopts = 'cd %s;' % local_subpath preinstallopts = 'cd %s;' % local_subpath +configopts = '--enable-hdf5-mod=$EBROOTHDF5' + sanity_check_paths = { 'files': ["bin/darshan-job-summary.pl"], 'dirs': [] @@ -55,6 +57,7 @@ sanity_check_paths = { dependencies = [ ("gnuplot", "5.2.8"), ("Perl", "5.32.0"), + ("HDF5", "1.10.6"), ] moduleclass = 'lib' diff --git a/Golden_Repo/g/GL2PS/GL2PS-1.4.2-GCCcore-9.3.0.eb b/Golden_Repo/g/GL2PS/GL2PS-1.4.2-GCCcore-9.3.0.eb index e119f41fbb7dd6c66e1aaf6380c178645976bdf0..1f453c453d90f32cb550e97257595ac5af3c3e3f 100644 --- a/Golden_Repo/g/GL2PS/GL2PS-1.4.2-GCCcore-9.3.0.eb +++ b/Golden_Repo/g/GL2PS/GL2PS-1.4.2-GCCcore-9.3.0.eb @@ -17,6 +17,7 @@ sources = [SOURCELOWER_TGZ] builddependencies = [ ('binutils', '2.34'), ('CMake', '3.18.0'), + ('texinfo', '6.7'), ] dependencies = [ diff --git a/Golden_Repo/g/GROMACS/GROMACS-2020.4-plumed-gpsmkl-2020.eb b/Golden_Repo/g/GROMACS/GROMACS-2020.4-plumed-gpsmkl-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..8cdf15c34e5df6bafcff5b49cdcca2ea357e53fb --- /dev/null +++ b/Golden_Repo/g/GROMACS/GROMACS-2020.4-plumed-gpsmkl-2020.eb @@ -0,0 +1,70 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski <wiktor.jurkowski@gmail.com> +# * Fotis Georgatos <fotis@cern.ch> +# * George Tsouloupas <g.tsouloupas@cyi.ac.cy> +# * Kenneth Hoste <kenneth.hoste@ugent.be> +# * Adam Huffman <adam.huffman@crick.ac.uk> +# License:: MIT/GPL +## + +name = 'GROMACS' +version = '2020.4' +versionsuffix = '-plumed' + +homepage = 'http://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian equations +of motion for systems with hundreds to millions of particles. It is primarily designed for +biochemical molecules like proteins and lipids that have a lot of complicated bonded interactions, +but since GROMACS is extremely fast at calculating the non-bonded interactions (that usually +dominate simulations) many groups are also using it for research on non-biological systems, e.g. +polymers. + +Documentation +============= +Use `gmx` to execute GROMACS commands on a single node, for example, to prepare your run. Use +`gmx_mpi mdrun` in your job scripts with `srun`. The user documentation of GROMACS can be found at +http://manual.gromacs.org/documentation/current/user-guide/index.html. + +""" + +site_contacts = 'sc@fz-juelich.de' + +toolchain = {'name': 'gpsmkl', 'version': '2020'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = ['ftp://ftp.gromacs.org/pub/gromacs/'] +sources = [SOURCELOWER_TAR_GZ] + +builddependencies = [ + ('CMake', '3.18.0'), + ('libxml2', '2.9.10') +] + + +dependencies = [ + ('PLUMED', '2.7.0'), + ('CUDA', '11.0', '', True), +] + +configopts = '-DCMAKE_PREFIX_PATH=$EBROOTHWLOC -DMPIEXEC_MAX_NUMPROCS="24" ' +configopts += '-DMKL_LIBRARIES="${MKLROOT}/lib/intel64/libmkl_intel_ilp64.so;' +configopts += '${MKLROOT}/lib/intel64/libmkl_sequential.so;${MKLROOT}/lib/intel64/libmkl_core.so" ' +configopts += '-DGMX_CUDA_TARGET_SM="60;70;80" ' + +mpiexec = 'srun' +mpiexec_numproc_flag = '"--gres=gpu:1 -n"' +mpi_numprocs = '24' + +runtest = False + +modluafooter = ''' +add_property("arch","gpu") +''' + +moduleclass = 'bio' diff --git a/Golden_Repo/h/HDF5/HDF5-1.10.6-ipsmpi-2020-mt.eb b/Golden_Repo/h/HDF5/HDF5-1.10.6-ipsmpi-2020-mt.eb new file mode 100644 index 0000000000000000000000000000000000000000..0853cd5096a183fa24f8ce6020093643d4214d84 --- /dev/null +++ b/Golden_Repo/h/HDF5/HDF5-1.10.6-ipsmpi-2020-mt.eb @@ -0,0 +1,25 @@ +name = 'HDF5' +version = '1.10.6' + +homepage = 'http://www.hdfgroup.org/HDF5/' +description = """HDF5 is a unique technology suite that makes possible the management of + extremely large and complex data collections. +""" + +site_contacts = 's.luehrs@fz-juelich.de' + +toolchain = {'name': 'ipsmpi', 'version': '2020-mt'} +toolchainopts = {'optarch': True, 'pic': True, 'usempi': True} + +source_urls = [ + 'https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major)s.%(version_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/Golden_Repo/h/h5py/h5py-2.10.0-ipsmpi-2020-mt-Python-3.8.5.eb b/Golden_Repo/h/h5py/h5py-2.10.0-ipsmpi-2020-mt-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..23f284c3ad78cbc851273f254db1f99c4ac239bc --- /dev/null +++ b/Golden_Repo/h/h5py/h5py-2.10.0-ipsmpi-2020-mt-Python-3.8.5.eb @@ -0,0 +1,43 @@ +easyblock = "PythonPackage" + +name = 'h5py' +version = '2.10.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://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. +""" + +site_contacts = 's.luehrs@fz-juelich.de' + +toolchain = {'name': 'ipsmpi', 'version': '2020-mt'} +toolchainopts = {'usempi': True} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +req_py_majver = 3 +req_py_minver = 0 + +# to really use mpi enabled hdf5 we now seem to need a configure step +prebuildopts = 'export LDSHARED="$CC -shared" && python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' + +builddependencies = [ + ('pkgconfig', '1.5.1', versionsuffix), +] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), # numpy required + ('mpi4py', '3.0.3', versionsuffix), # required for MPI support + ('HDF5', '1.10.6'), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/'], +} + +moduleclass = 'data' diff --git a/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..9d04b48dea0557deaf3e779f78ca2508183b340c --- /dev/null +++ b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb @@ -0,0 +1,98 @@ +easyblock = 'PythonBundle' + +name = 'PyTorch-Geometric' +version = '1.6.3' +local_pytorch_ver = '1.7.0' +versionsuffix = '-Python-%%(pyver)s-PyTorch-%s' % local_pytorch_ver + +homepage = 'https://github.com/rusty1s/pytorch_geometric' +description = "PyTorch Geometric (PyG) is a geometric deep learning extension library for PyTorch." + +site_contacts = 't.breuer@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} + +local_pysuff = '-Python-%(pyver)s' +dependencies = [ + ('Python', '3.8.5'), + ('PyTorch', local_pytorch_ver, local_pysuff), + ('numba', '0.51.1', local_pysuff), + ('h5py', '2.10.0', '-serial%s' % local_pysuff), + ('scikit', '2020', local_pysuff), + ('torchvision', '0.8.1', local_pysuff), + ('trimesh', '3.8.11', local_pysuff), + ('METIS', '5.1.0', '-IDX64'), +] + +use_pip = True + +# this is a bundle of Python packages +exts_defaultclass = 'PythonPackage' +exts_download_dep_fail = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('gdist', '1.0.3', { + 'source_urls': ['https://pypi.python.org/packages/source/g/gdist'], + 'modulename': 'gdist', + }), + ('rdflib', '5.0.0', { + 'checksums': ['78149dd49d385efec3b3adfbd61c87afaf1281c30d3fcaf1b323b34f603fb155'], + 'modulename': 'rdflib', + }), + ('googledrivedownloader', '0.4', { + 'checksums': ['4b34c1337b2ff3bf2bd7581818efbdcaea7d50ffd484ccf80809688f5ca0e204'], + 'modulename': 'google_drive_downloader', + }), + ('plyfile', '0.7.2', { + 'checksums': ['59a25845d00a51098e6c9147c3c96ce89ad97395e256a4fabb4aed7cf7db5541'], + }), + ('torch_scatter', '2.0.5', { + 'patches': ['torch_scatter-2.0.5-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '2.0.5.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_scatter/archive/'], + }), + ('torch_sparse', '0.6.8', { + 'patches': ['torch_sparse-0.6.8-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'preinstallopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'source_tmpl': '0.6.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_sparse/archive/'], + }), + ('torch_cluster', '1.5.8', { + 'patches': ['torch_cluster-1.5.8-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.5.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_cluster/archive/'], + }), + ('torch_spline_conv', '1.2.0', { + 'patches': ['torch_spline_conv-1.2.0-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.2.0.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_spline_conv/archive'], + }), + ('ase', '3.21.0', { + 'source_urls': ['https://pypi.python.org/packages/source/a/ase'], + 'modulename': 'ase', + }), + ('python-louvain', '0.15', { + 'source_urls': ['https://pypi.python.org/packages/source/p/python-louvain'], + 'checksums': ['2a856edfbe29952a60a5538a84bb78cca18f6884a88b9325e85a11c8dd4917eb'], + 'modulename': 'community', + }), + ('tqdm', '4.56.0', { + 'source_urls': ['https://pypi.python.org/packages/source/t/tqdm'], + 'modulename': 'tqdm', + }), + ('torch_geometric', version, { + 'checksums': ['347f693bebcc8a621eda4867dafab91c04db5f596d7ed7ecb89b242f8ab5c6a1'], + }), +] + +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_70.patch b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..25bbf0ec24a03461821a0b38e4ef043efcb052d0 --- /dev/null +++ b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:10:11.609352000 +0100 ++++ setup.py 2021-01-20 10:10:37.525550350 +0100 +@@ -39,7 +39,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_70.patch b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..94ae43ed4ef1a4d0788e0d08a0564b8978868506 --- /dev/null +++ b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 09:53:22.085271000 +0100 ++++ setup.py 2021-01-20 09:53:54.835241801 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_70.patch b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..1a4f2d0fbc9e83c52a46f82dd5abfc6bdf00af82 --- /dev/null +++ b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:07:15.518446000 +0100 ++++ setup.py 2021-01-20 10:07:51.389877000 +0100 +@@ -53,7 +53,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + if sys.platform == 'win32': diff --git a/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_70.patch b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..e0a3e0ccf186aef0a4c22892b79ae0db810f351c --- /dev/null +++ b/Golden_Repo/hdfml_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:12:33.326687000 +0100 ++++ setup.py 2021-01-20 10:12:51.492198482 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/hidden_deps.txt b/Golden_Repo/hidden_deps.txt index 74c6b3e597f0de59005ed1b80327342ce36c69c5..963e00853f7c5bab64817480f9d5fafdaf13eccb 100644 --- a/Golden_Repo/hidden_deps.txt +++ b/Golden_Repo/hidden_deps.txt @@ -1,5 +1,6 @@ adwaita-icon-theme ant +ACTC ANTLR APR APR-util @@ -18,7 +19,6 @@ cairo cling configurable-http-proxy Coreutils -CubeLib CubeWriter CUSP damageproto @@ -172,6 +172,7 @@ NASM ncurses nettle nsync +nlohmann-json NLopt nodejs nsync diff --git a/Golden_Repo/j/JUBE/JUBE-2.4.1.eb b/Golden_Repo/j/JUBE/JUBE-2.4.1.eb new file mode 100644 index 0000000000000000000000000000000000000000..9bfcf98a893774c196fc39d78abbf2bbb1ca8075 --- /dev/null +++ b/Golden_Repo/j/JUBE/JUBE-2.4.1.eb @@ -0,0 +1,33 @@ +easyblock = "VersionIndependentPythonPackage" + +name = "JUBE" +version = "2.4.1" + +homepage = "https://www.fz-juelich.de/jsc/jube" +description = """The JUBE benchmarking environment provides a script based +framework to easily create benchmark sets, run those sets on different +computer systems and evaluate the results. +""" + +site_contacts = 's.luehrs@fz-juelich.de' + +toolchain = SYSTEM + +source_urls = ['https://apps.fz-juelich.de/jsc/jube/jube2/download.php?file='] +sources = [SOURCE_TAR_GZ] +checksums = ['d5d4a33fd339c7cd721a2836998605b9e492455c7bf755c64c7fd45e07be9016'] + +options = {'modulename': 'jube2'} + +sanity_check_paths = { + 'files': ['bin/jube'], + 'dirs': [], +} + +modextrapaths = { + 'JUBE_INCLUDE_PATH': 'platform/slurm' +} + +modluafooter = 'execute {cmd=\'eval "$(jube complete)"\',modeA={"load"}}' + +moduleclass = 'tools' diff --git a/Golden_Repo/j/JupyterKernel-PyQuantum/JupyterKernel-PyQuantum-1.1-2020.2.5-gcccoremkl-9.3.0-2020.2.254.eb b/Golden_Repo/j/JupyterKernel-PyQuantum/JupyterKernel-PyQuantum-1.1-2020.2.5-gcccoremkl-9.3.0-2020.2.254.eb new file mode 100644 index 0000000000000000000000000000000000000000..e4e966a70fe9e0bc9ad5809c6bfddbcb32946f59 --- /dev/null +++ b/Golden_Repo/j/JupyterKernel-PyQuantum/JupyterKernel-PyQuantum-1.1-2020.2.5-gcccoremkl-9.3.0-2020.2.254.eb @@ -0,0 +1,141 @@ +easyblock = 'Binary' + +name = 'JupyterKernel-PyQuantum' +version = '1.1' +local_cirqver = '0.9.1' +local_dwavever = '3.2.0' +local_pyquilver = '2.27.0' +local_qiskitver = '0.23.2' +local_jupyterver = '2020.2.5' +versionsuffix = '-' + local_jupyterver + +local_pysuffix = '-Python-%(pyver)s' + +homepage = 'https://www.fz-juelich.de' +description = """ +Kernel for quantum computing in Jupyter. +Project Jupyter exists to develop open-source software, open-standards, and services for interactive computing across +dozens of programming languages. +""" + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} +toolchainopts = {'pic': True} + +sources = [ + ('logo-128x128.png'), + ('logo-32x32.png'), + ('logo-64x64.png'), +] + +builddependencies = [ + ('Cirq', local_cirqver, local_pysuffix), # ensure it is available + ('DWave', local_dwavever, local_pysuffix), # ensure it is available + ('PyQuil', local_pyquilver, local_pysuffix), # ensure it is available + # ('Qiskit', local_qiskitver, local_pysuffix, ('gpsmkl', '2020')), # ensure it is available +] + +dependencies = [ + ('Python', '3.8.5'), + ('Jupyter', local_jupyterver, local_pysuffix), +] + +local_kernel_dir = 'pyquantum' +local_kernel_name = 'PyQuantum-%s' % version + +modextrapaths = { + 'JUPYTER_PATH': ['share/jupyter'], # add search path for kernelspecs +} + +# Ensure that the user-specific $HOME/.local/share/jupyter is first entry in JUPYTHER_PATH +modluafooter = """ +prepend_path("JUPYTER_PATH", pathJoin(os.getenv("HOME"), ".local/share/jupyter")) +""" + +postinstallcmds = [ + ( + '{ cat >> %%(builddir)s/env.sh; } << \'EOF\'\n' + 'export KERNEL_DIR=%s\n' + 'export KERNEL_NAME=%s\n' + 'EOF' + ) % (local_kernel_dir, local_kernel_name), + 'source %%(builddir)s/env.sh && python -m ipykernel install --name=%s --prefix=%%(installdir)s' % local_kernel_dir, + + # write logo image + ( + 'source %%(builddir)s/env.sh && ' + ' cp %%(builddir)s/logo-32x32.png %%(installdir)s/share/jupyter/kernels/%s/logo-32x32.png' + ) % (local_kernel_dir), + ( + 'source %%(builddir)s/env.sh && ' + ' cp %%(builddir)s/logo-64x64.png %%(installdir)s/share/jupyter/kernels/%s/logo-64x64.png' + ) % (local_kernel_dir), + ( + 'source %%(builddir)s/env.sh && ' + ' cp %%(builddir)s/logo-128x128.png %%(installdir)s/share/jupyter/kernels/%s/logo-128x128.png' + ) % (local_kernel_dir), + + # write kernel.sh + ( + '{ source %%(builddir)s/env.sh && ' + ' cat > %%(installdir)s/share/jupyter/kernels/%s/kernel.sh; } << \'EOF\'\n' + '#!/bin/bash \n' + '\n' + '# Load required modules \n' + 'module purge \n' + 'module use $OTHERSTAGES \n' + 'module load Stages/2020 \n' + 'module load GCC/9.3.0 \n' + 'module load ParaStationMPI \n' + 'module load Python/%%(pyver)s \n' + 'module load Jupyter/%s%s \n' + '\n' + 'module load Cirq/%s%s \n' + 'module load DWave/%s%s \n' + 'module load PyQuil/%s%s \n' + 'module load Qiskit/%s%s \n' + '\n' + 'exec python -m ipykernel $@\n' + 'EOF' + ) % (local_kernel_dir, + local_jupyterver, local_pysuffix, + local_cirqver, local_pysuffix, + local_dwavever, local_pysuffix, + local_pyquilver, local_pysuffix, + local_qiskitver, local_pysuffix), + 'source %(builddir)s/env.sh && chmod +x %(installdir)s/share/jupyter/kernels/${KERNEL_DIR}/kernel.sh', + + # write kernel.json + ( + '{ source %%(builddir)s/env.sh && ' + ' cat > %%(installdir)s/share/jupyter/kernels/%s/kernel.json; } << \'EOF\'\n' + '{ \n' + ' "argv": [ \n' + ' "%%(installdir)s/share/jupyter/kernels/%s/kernel.sh", \n' + ' "-m", \n' + ' "ipykernel_launcher", \n' + ' "-f", \n' + ' "{connection_file}" \n' + ' ], \n' + ' "display_name": "%s", \n' + ' "language": "python", \n' + ' "name": "%s" \n' + '}\n' + 'EOF' + ) % (local_kernel_dir, local_kernel_dir, local_kernel_name, local_kernel_name), +] + +# specify that Bundle easyblock should run a full sanity check, rather than just trying to load the module +# full_sanity_check = True +sanity_check_paths = { + 'files': [ + 'share/jupyter/kernels/%s/kernel.sh' % local_kernel_dir, + 'share/jupyter/kernels/%s/kernel.json' % local_kernel_dir, + ], + 'dirs': [ + 'share/jupyter/kernels/', + ], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/j/JupyterProxy-XpraHTML5/jupyter_xprahtml5_proxy-launch_xpra.patch b/Golden_Repo/j/JupyterProxy-XpraHTML5/jupyter_xprahtml5_proxy-launch_xpra.patch index 329d2ac2728fc42991d54a2f7a74e9c081fc50b0..100eb76f25e5ae2400283077f9e3e73d4c485680 100644 --- a/Golden_Repo/j/JupyterProxy-XpraHTML5/jupyter_xprahtml5_proxy-launch_xpra.patch +++ b/Golden_Repo/j/JupyterProxy-XpraHTML5/jupyter_xprahtml5_proxy-launch_xpra.patch @@ -15,7 +15,7 @@ diff -Naur jupyter-xprahtml5-proxy.orig/jupyter_xprahtml5_proxy/share/launch_xpr +module load Stages/2020 +module load GCCcore/.9.3.0 +module load xpra/4.0.4-Python-3.8.5 -+module load jsc-xdg-menu/.2020.3 ++module load jsc-xdg-menu/.2020.4 + +if ! command -v xterm &> /dev/null +then diff --git a/Golden_Repo/j/jsc-xdg-menu/jsc-xdg-menu-2020.3-GCCcore-9.3.0.eb b/Golden_Repo/j/jsc-xdg-menu/jsc-xdg-menu-2020.4-GCCcore-9.3.0.eb similarity index 87% rename from Golden_Repo/j/jsc-xdg-menu/jsc-xdg-menu-2020.3-GCCcore-9.3.0.eb rename to Golden_Repo/j/jsc-xdg-menu/jsc-xdg-menu-2020.4-GCCcore-9.3.0.eb index d9875106b5accd47d845d29b3042869316644928..f5467ffa095fbb1e4a2ab1032a9f9555fc3aa365 100644 --- a/Golden_Repo/j/jsc-xdg-menu/jsc-xdg-menu-2020.3-GCCcore-9.3.0.eb +++ b/Golden_Repo/j/jsc-xdg-menu/jsc-xdg-menu-2020.4-GCCcore-9.3.0.eb @@ -1,7 +1,7 @@ easyblock = 'Binary' name = 'jsc-xdg-menu' -version = '2020.3' +version = '2020.4' homepage = '' description = """setup JSC`s desktop menu""" @@ -12,7 +12,7 @@ toolchain = {'name': 'GCCcore', 'version': '9.3.0'} source_urls = ['https://gitlab.version.fz-juelich.de/goebbert1/jsc-xdg-menu/-/archive/%(version)s/'] sources = ['%(name)s-%(version)s.tar.gz'] -checksums = [('sha256', 'be1ff06bd04fc098fc00a46019ea9404a1867b4d5d72db750874a44a8565f069')], +checksums = [('sha256', '866afc04be7a8b7068baca0323a0ed88c6bbccf793fd9b3f4f686e6ebc244548')], extract_sources = True, install_cmd = 'cp -a %(builddir)s/%(name)s-%(version)s/* %(installdir)s/' diff --git a/Golden_Repo/jurecadc_overlay/l/LAMMPS/LAMMPS-24Dec2020-gpsmkl-2020-CUDA.eb b/Golden_Repo/jurecadc_overlay/l/LAMMPS/LAMMPS-24Dec2020-gpsmkl-2020-CUDA.eb new file mode 100644 index 0000000000000000000000000000000000000000..35a3b40805f3d2068ff0cc8d4ec8bedb40544b0f --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/l/LAMMPS/LAMMPS-24Dec2020-gpsmkl-2020-CUDA.eb @@ -0,0 +1,168 @@ +# Installation command used: +# eb --include-easyblocks=$PWD/Custom_EasyBlocks/lammps.py,"$EASYBUILD_INCLUDE_EASYBLOCKS"\\ +# --mpi-cmd-template='echo %(nr_ranks)s && %(cmd)s' \\ +# Golden_Repo/l/LAMMPS/LAMMPS-22Oct2020-intel-para-2020-Python-3.8.5.eb +name = 'LAMMPS' +version = '24Dec2020' +versionsuffix = '-CUDA' + +homepage = 'https://lammps.sandia.gov/' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +site_contacts = 'a.kreuzer@fz-juelich.de' + +toolchain = {'name': 'gpsmkl', 'version': '2020'} +toolchainopts = {'openmp': True, 'cstd': 'c++11', 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [ + 'patch_%(version)s.tar.gz', + {'extract_cmd': 'cp %s %(builddir)s', 'filename': 'lammps_vs_yaff_test_single_point_energy.py'}, +] + +builddependencies = [ + ('CMake', '3.18.0'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.0', '-Python-%(pyver)s'), +] +dependencies = [ + ('CUDA', '11.0', '', SYSTEM), + ('Python', '3.8.5'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.5'), + ('netCDF', '4.7.4'), + ('GSL', '2.6'), + ('zlib', '1.2.11'), + ('gzip', '1.10'), + ('cURL', '7.71.1'), + ('HDF5', '1.10.6'), + ('tbb', '2020.3'), + ('PCRE', '8.44'), + ('libxml2', '2.9.10'), + ('FFmpeg', '4.3.1'), + ('Voro++', '0.4.6'), + ('kim-api', '2.1.3'), + ('Eigen', '3.3.7'), + ('yaff', '1.6.0', '-Python-%(pyver)s'), + ('PLUMED', '2.6.1'), + ('ScaFaCoS', '1.0.1'), + # See below for why this is not included + # ('VTK', '8.2.0', local_python_versionsuffix), +] + +# not enabled (yet), needs more work/additional dependencies: +# ADIOS - https://lammps.sandia.gov/doc/Build_extras.html#user-adios-package +# AWPMD - https://lammps.sandia.gov/doc/Build_extras.html#user-awpmd-package +# QMMM - https://lammps.sandia.gov/doc/Packages_details.html#pkg-user-qmmm +# QUIP - https://lammps.sandia.gov/doc/Build_extras.html#user-quip-package +# VTK - support is available in the foss version but currently fails to build for intel +# due to https://software.intel.com/en-us/forums/intel-fortran-compiler/topic/746611 +# see https://github.com/lammps/lammps/issues/1964 for details +user_packages = [ + 'ATC', + 'BOCS', + 'CGDNA', + 'CGSDK', + 'COLVARS', + 'DIFFRACTION', + 'DPD', + 'DRUDE', + 'EFF', + 'FEP', + 'H5MD', + 'LB', + 'MANIFOLD', + 'MEAMC', + 'MESODPD', + 'MESONT', + 'MGPT', + 'MISC', + 'MOFFF', + 'MOLFILE', + 'NETCDF', + 'PHONON', + 'PLUMED', + 'PTM', + 'QTB', + 'REACTION', + 'REAXC', + 'SCAFACOS', + 'SDPD', + 'SMD', + 'SMTBQ', + 'SPH', + 'TALLY', + 'UEF', + 'YAFF', +] +enhance_sanity_check = True + +cuda_compute_capabilities = ['8.0'] + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# Use the bfd linker for C++ (this will only be picked up when using Kokkos) +preconfigopts = 'export CXXFLAGS="-fuse-ld=bfd $CXXFLAGS" &&' +# docs require virtualenv (which we don't have) +configopts = ' -DBUILD_DOC=off -DPKG_USER-INTEL=off ' + +# auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) +# +# not enabled (yet), needs more work/additional dependencies: +# 'LATTE', - https://lammps.sandia.gov/doc/Build_extras.html#latte-package +# 'MSCG', - https://lammps.sandia.gov/doc/Build_extras.html#mscg-package +general_packages = [ + 'ASPHERE', + 'BODY', + 'CLASS2', + 'COLLOID', + 'COMPRESS', + 'CORESHELL', + 'DIPOLE', + 'GRANULAR', + 'KIM', + 'KSPACE', + 'MANYBODY', + 'MC', + 'MESSAGE', + 'MISC', + 'MLIAP', + 'MOLECULE', + 'MPIIO', + 'PERI', + 'POEMS', + 'PYTHON', + 'QEQ', + 'REPLICA', + 'RIGID', + 'SHOCK', + 'SNAP', + 'SPIN', + 'SRD', + 'VORONOI', +] + +# run short test case to make sure installation doesn't produce blatently incorrect results; +# this catches a problem where having the USER-INTEL package enabled causes trouble when installing with intel/2019b +# (requires an MPI context for intel/2020a) +# sanity_check_commands = ['cd %(builddir)s && %(mpi_cmd_prefix)s python lammps_vs_yaff_test_single_point_energy.py'] + +modluafooter = ''' +add_property("arch","gpu") +''' + +moduleclass = 'chem' diff --git a/Golden_Repo/jurecadc_overlay/n/NAG/NAG-Mark27-intel-para-2020.eb b/Golden_Repo/jurecadc_overlay/n/NAG/NAG-Mark27-intel-para-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..34da5890eab080d10cf68180bf56589467f18733 --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/n/NAG/NAG-Mark27-intel-para-2020.eb @@ -0,0 +1,58 @@ +easyblock = 'Tarball' + +name = 'NAG' +version = 'Mark27' + + +homepage = 'http://www.nag.com/numeric/numerical_libraries.asp' +description = """NAG (Numerical Algorithms Group) Library Mark 27 +(Fortran-, C and AD-Library). NAG Library Mark 27 offers hundreds +of user-callable routines to solve mathematical and statistical problems. + +To enhance the performance, the BLAS and LAPACK routines of the MKL are used. + +The complete documentation is available online with + +https://www.nag.co.uk/numeric/nl/nagdoc_latest +""" + +usage = """ +The library is licensed. The necessary licence is provided through the +environment variable NAG_KUSARI_FILE. By default the resource manager exports +all variables to the compute nodes, if you disable this behaviour you will need +to make the environment variable known to the compute nodes by adding: + + --exports=NAG_KUSARI_FILE + +in the srun statement. + +To see, how to compile and link a program, please call: + + nag_example -help + +Compiling and linking can be done in the following manner: + +ifort -I$EBROOTNAG/nag_interface_blocks driver.f -L$MKLPATH\ + -lnag -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread +""" + +examples = """To see how to use a special NAG routine please call the script nag_example, e.g.: + + nag_example e04ucf + +An example program and the input data (if necessary) are copied to the current +directory. The example program is compiled, linked and executed. +""" + +site_contacts = 'sc@fz-juelich.de' + +toolchain = {'name': 'intel-para', 'version': '2020'} +sources = [SOURCELOWER_TAR_GZ] + +modextravars = { + 'NAG_KUSARI_FILE': '/p/software/jurecadc/licenses/NAG/nll6i27db.lic', +} + +modluafooter = 'setenv("MKLPATH", pathJoin(os.getenv("MKLROOT"),"lib/intel64"))' + +moduleclass = 'numlib' diff --git a/Golden_Repo/jurecadc_overlay/n/NVHPC/NVHPC-20.11-GCC-9.3.0.eb b/Golden_Repo/jurecadc_overlay/n/NVHPC/NVHPC-20.11-GCC-9.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..b9dbd75dd8d1cbd62799493f7774344ff89c6b2f --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/n/NVHPC/NVHPC-20.11-GCC-9.3.0.eb @@ -0,0 +1,85 @@ +name = 'NVHPC' +version = '20.11' +local_gccver = '9.3.0' +versionsuffix = '-GCC-%s' % local_gccver + +homepage = 'https://developer.nvidia.com/hpc-sdk/' +description = """C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI)""" +site_contacts = 'a.herten@fz-juelich.de' + +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_2020_%%(version_major)s%%(version_minor)s_Linux_%s_cuda_multi.tar.gz' +sources = [local_tarball_tmpl % '%(arch)s'] +checksums = [ + { + local_tarball_tmpl % 'x86_64': + 'c80fc26e5ba586696f7030f03054c1aaca0752a891c7923faf47eb23b66857ec', + local_tarball_tmpl % 'ppc64le': + '99e5a5437e82f3914e0fe81feb761a5b599a3fe8b31f3c2cac8ae47e8cdc7b0f' + } +] + +local_gccver = '9.3.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.34', '', ('GCCcore', local_gccver)), + ('CUDA', '11.0', '', SYSTEM), + # This is necessary to avoid cases where just libnuma.so.1 is present in the system and -lnuma fails + ('numactl', '2.0.13', '', SYSTEM) +] + +module_add_cuda = False +cuda_compute_capabilities = "8.0" + +# 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.0' + +# 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" +# 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 = False # Remove compilers from PATH (Bring-your-own compilers) +# module_nvhpc_own_mpi = False # Add NVHPC's own pre-compiled OpenMPI +# module_add_math_libs = False # Add NVHPC's math libraries (which should be there from CUDA anyway) +# module_add_profilers = False # Add NVHPC's NVIDIA Profilers +# module_add_nccl = False # Add NVHPC's NCCL library +# module_add_nvshmem = False # Add NVHPC's NVSHMEM library +# module_add_cuda = False # 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' + +# We use a HMNS, so let's enforce a unique compiler +modluafooter = ''' +family("compiler") +add_property("arch","gpu") +''' + +# Always do a recursive unload on compilers +recursive_module_unload = True diff --git a/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..9577412ca9bafb7c907f3e0d16d9c94cd2dbf8b5 --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb @@ -0,0 +1,94 @@ +easyblock = 'PythonBundle' + +name = 'PyTorch-Geometric' +version = '1.6.3' +local_pytorch_ver = '1.7.0' +versionsuffix = '-Python-%%(pyver)s-PyTorch-%s' % local_pytorch_ver + +homepage = 'https://github.com/rusty1s/pytorch_geometric' +description = "PyTorch Geometric (PyG) is a geometric deep learning extension library for PyTorch." + +site_contacts = 't.breuer@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} + +local_pysuff = '-Python-%(pyver)s' +dependencies = [ + ('Python', '3.8.5'), + ('PyTorch', local_pytorch_ver, local_pysuff), + ('numba', '0.51.1', local_pysuff), + ('h5py', '2.10.0', '-serial%s' % local_pysuff), + ('scikit', '2020', local_pysuff), + ('torchvision', '0.8.1', local_pysuff), + ('trimesh', '3.8.11', local_pysuff), + ('METIS', '5.1.0', '-IDX64'), +] + +use_pip = True + +# this is a bundle of Python packages +exts_defaultclass = 'PythonPackage' +exts_download_dep_fail = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('gdist', '1.0.3', { + 'source_urls': ['https://pypi.python.org/packages/source/g/gdist'], + 'modulename': 'gdist', + }), + ('googledrivedownloader', '0.4', { + 'checksums': ['4b34c1337b2ff3bf2bd7581818efbdcaea7d50ffd484ccf80809688f5ca0e204'], + 'modulename': 'google_drive_downloader', + }), + ('plyfile', '0.7.2', { + 'checksums': ['59a25845d00a51098e6c9147c3c96ce89ad97395e256a4fabb4aed7cf7db5541'], + }), + ('torch_scatter', '2.0.5', { + 'patches': ['torch_scatter-2.0.5-sm_80.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '2.0.5.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_scatter/archive/'], + }), + ('torch_sparse', '0.6.8', { + 'patches': ['torch_sparse-0.6.8-sm_80.patch'], + 'prebuildopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'preinstallopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'source_tmpl': '0.6.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_sparse/archive/'], + }), + ('torch_cluster', '1.5.8', { + 'patches': ['torch_cluster-1.5.8-sm_80.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.5.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_cluster/archive/'], + }), + ('torch_spline_conv', '1.2.0', { + 'patches': ['torch_spline_conv-1.2.0-sm_80.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.2.0.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_spline_conv/archive'], + }), + ('ase', '3.21.0', { + 'source_urls': ['https://pypi.python.org/packages/source/a/ase'], + 'modulename': 'ase', + }), + ('python-louvain', '0.15', { + 'source_urls': ['https://pypi.python.org/packages/source/p/python-louvain'], + 'checksums': ['2a856edfbe29952a60a5538a84bb78cca18f6884a88b9325e85a11c8dd4917eb'], + 'modulename': 'community', + }), + ('tqdm', '4.56.0', { + 'source_urls': ['https://pypi.python.org/packages/source/t/tqdm'], + 'modulename': 'tqdm', + }), + ('torch_geometric', version, { + 'checksums': ['347f693bebcc8a621eda4867dafab91c04db5f596d7ed7ecb89b242f8ab5c6a1'], + }), +] + +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_80.patch b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_80.patch new file mode 100644 index 0000000000000000000000000000000000000000..c80da06e0469c2c613424a4df95950c022c60895 --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_80.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:10:11.609352000 +0100 ++++ setup.py 2021-01-20 10:10:37.525550350 +0100 +@@ -39,7 +39,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_80,code=sm_80', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_80.patch b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_80.patch new file mode 100644 index 0000000000000000000000000000000000000000..ec5521c3024f876be8c5f6999256757e7d0631ec --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_80.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 09:53:22.085271000 +0100 ++++ setup.py 2021-01-20 09:53:54.835241801 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_80,code=sm_80', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_80.patch b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_80.patch new file mode 100644 index 0000000000000000000000000000000000000000..5439544a81cb588a07218faeb89272c07d9b2595 --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_80.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:07:15.518446000 +0100 ++++ setup.py 2021-01-20 10:07:51.389877000 +0100 +@@ -53,7 +53,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_80,code=sm_80', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + if sys.platform == 'win32': diff --git a/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_80.patch b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_80.patch new file mode 100644 index 0000000000000000000000000000000000000000..a3ae24b363e5bce2e2937c14301af194bd14cc14 --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_80.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:12:33.326687000 +0100 ++++ setup.py 2021-01-20 10:12:51.492198482 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_80,code=sm_80', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/jurecadc_overlay/p/pscom/pscom-5.4.6-1.eb b/Golden_Repo/jurecadc_overlay/p/pscom/pscom-5.4.6-1.eb new file mode 100644 index 0000000000000000000000000000000000000000..db3e6a6b9c6ae94ec1c2932c37d1fc9346b23e96 --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/p/pscom/pscom-5.4.6-1.eb @@ -0,0 +1,47 @@ +easyblock = 'ConfigureMake' + +name = 'pscom' +version = "5.4.6-1" +homepage = 'http://www.par-tec.com' +description = """ParaStation is a robust and efficient cluster middleware, consisting of a high-performance +communication layer (MPI) and a sophisticated management layer. +""" + +site_contacts = 'Damian Alvarez <d.alvarez@fz-juelich.de>' + +toolchain = SYSTEM + +sources = ['%%(name)s-%s_gw.tar.bz2' % version] + +builddependencies = [ + # Fails with binutils 2.34 + ('binutils', '2.32'), + ('popt', '1.16'), + ('CUDA', '11.0'), +] + +dependencies = [ + ('UCX', '1.8.1'), +] + +preconfigopts = 'export UCP_LDFLAGS="-L$EBROOTUCX/lib" && ' +preconfigopts += 'export CUDA_LDFLAGS="-L$EBROOTNVIDIA/lib64" &&' + +configopts = '--enable-cuda --enable-ucp' + +sanity_check_paths = { + 'files': [ + 'include/%(name)s.h', + ('lib/libpscom.so', 'lib64/libpscom.so'), + ('lib/libpscom4ucp.so', 'lib64/libpscom4ucp.so'), + ('lib/libpscom4openib.so', 'lib64/libpscom4openib.so'), + ('lib/libpscom4gateway.so', 'lib64/libpscom4gateway.so'), + ], + 'dirs': [], +} + +modextravars = { + 'PSCOMVERSION': '%s' % version, +} + +moduleclass = 'tools' diff --git a/Golden_Repo/jurecadc_overlay/p/pscom/pscom-5.4.7-1.eb b/Golden_Repo/jurecadc_overlay/p/pscom/pscom-5.4.7-1.eb new file mode 100644 index 0000000000000000000000000000000000000000..438dcc3ca66da9503b122867d800b7faf64469e3 --- /dev/null +++ b/Golden_Repo/jurecadc_overlay/p/pscom/pscom-5.4.7-1.eb @@ -0,0 +1,48 @@ +easyblock = 'CMakeMake' + +name = 'pscom' +version = "5.4.7-1" +homepage = 'http://www.par-tec.com' +description = """ParaStation is a robust and efficient cluster middleware, consisting of a high-performance +communication layer (MPI) and a sophisticated management layer. +""" + +site_contacts = 'Damian Alvarez <d.alvarez@fz-juelich.de>' + +toolchain = SYSTEM + +sources = ['%%(name)s-%s_gw.tar.bz2' % version] + +builddependencies = [ + ('popt', '1.16'), + ('CUDA', '11.0'), + ('CMake', '3.18.0'), +] + +dependencies = [ + ('UCX', '1.9.0'), +] + +build_type = 'RelWithDebInfo' + +preconfigopts = 'export UCP_LDFLAGS="-L$EBROOTUCX/lib" && ' +preconfigopts += 'export CUDA_LDFLAGS="-L$EBROOTNVIDIA/lib64" &&' + +configopts = '-DCUDA_ENABLED=ON' + +sanity_check_paths = { + 'files': [ + 'include/%(name)s.h', + ('lib/libpscom.so', 'lib64/libpscom.so'), + ('lib/libpscom4ucp.so', 'lib64/libpscom4ucp.so'), + ('lib/libpscom4openib.so', 'lib64/libpscom4openib.so'), + ('lib/libpscom4gateway.so', 'lib64/libpscom4gateway.so'), + ], + 'dirs': [], +} + +modextravars = { + 'PSCOMVERSION': '%s' % version, +} + +moduleclass = 'tools' diff --git a/Golden_Repo/jusuf_overlay/n/NAG/NAG-Mark27-intel-para-2020.eb b/Golden_Repo/jusuf_overlay/n/NAG/NAG-Mark27-intel-para-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..9e3009c95c63a919d35fe1dad6dccb89f2f86368 --- /dev/null +++ b/Golden_Repo/jusuf_overlay/n/NAG/NAG-Mark27-intel-para-2020.eb @@ -0,0 +1,58 @@ +easyblock = 'Tarball' + +name = 'NAG' +version = 'Mark27' + + +homepage = 'http://www.nag.com/numeric/numerical_libraries.asp' +description = """NAG (Numerical Algorithms Group) Library Mark 27 +(Fortran-, C and AD-Library). NAG Library Mark 27 offers hundreds +of user-callable routines to solve mathematical and statistical problems. + +To enhance the performance, the BLAS and LAPACK routines of the MKL are used. + +The complete documentation is available online with + +https://www.nag.co.uk/numeric/nl/nagdoc_latest +""" + +usage = """ +The library is licensed. The necessary licence is provided through the +environment variable NAG_KUSARI_FILE. By default the resource manager exports +all variables to the compute nodes, if you disable this behaviour you will need +to make the environment variable known to the compute nodes by adding: + + --exports=NAG_KUSARI_FILE + +in the srun statement. + +To see, how to compile and link a program, please call: + + nag_example -help + +Compiling and linking can be done in the following manner: + +ifort -I$EBROOTNAG/nag_interface_blocks driver.f -L$MKLPATH\ + -lnag -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread +""" + +examples = """To see how to use a special NAG routine please call the script nag_example, e.g.: + + nag_example e04ucf + +An example program and the input data (if necessary) are copied to the current +directory. The example program is compiled, linked and executed. +""" + +site_contacts = 'sc@fz-juelich.de' + +toolchain = {'name': 'intel-para', 'version': '2020'} +sources = [SOURCELOWER_TAR_GZ] + +modextravars = { + 'NAG_KUSARI_FILE': '/p/software/jusuf/licenses/NAG/nll6i27db.lic', +} + +modluafooter = 'setenv("MKLPATH", pathJoin(os.getenv("MKLROOT"),"lib/intel64"))' + +moduleclass = 'numlib' diff --git a/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..9d04b48dea0557deaf3e779f78ca2508183b340c --- /dev/null +++ b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb @@ -0,0 +1,98 @@ +easyblock = 'PythonBundle' + +name = 'PyTorch-Geometric' +version = '1.6.3' +local_pytorch_ver = '1.7.0' +versionsuffix = '-Python-%%(pyver)s-PyTorch-%s' % local_pytorch_ver + +homepage = 'https://github.com/rusty1s/pytorch_geometric' +description = "PyTorch Geometric (PyG) is a geometric deep learning extension library for PyTorch." + +site_contacts = 't.breuer@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} + +local_pysuff = '-Python-%(pyver)s' +dependencies = [ + ('Python', '3.8.5'), + ('PyTorch', local_pytorch_ver, local_pysuff), + ('numba', '0.51.1', local_pysuff), + ('h5py', '2.10.0', '-serial%s' % local_pysuff), + ('scikit', '2020', local_pysuff), + ('torchvision', '0.8.1', local_pysuff), + ('trimesh', '3.8.11', local_pysuff), + ('METIS', '5.1.0', '-IDX64'), +] + +use_pip = True + +# this is a bundle of Python packages +exts_defaultclass = 'PythonPackage' +exts_download_dep_fail = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('gdist', '1.0.3', { + 'source_urls': ['https://pypi.python.org/packages/source/g/gdist'], + 'modulename': 'gdist', + }), + ('rdflib', '5.0.0', { + 'checksums': ['78149dd49d385efec3b3adfbd61c87afaf1281c30d3fcaf1b323b34f603fb155'], + 'modulename': 'rdflib', + }), + ('googledrivedownloader', '0.4', { + 'checksums': ['4b34c1337b2ff3bf2bd7581818efbdcaea7d50ffd484ccf80809688f5ca0e204'], + 'modulename': 'google_drive_downloader', + }), + ('plyfile', '0.7.2', { + 'checksums': ['59a25845d00a51098e6c9147c3c96ce89ad97395e256a4fabb4aed7cf7db5541'], + }), + ('torch_scatter', '2.0.5', { + 'patches': ['torch_scatter-2.0.5-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '2.0.5.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_scatter/archive/'], + }), + ('torch_sparse', '0.6.8', { + 'patches': ['torch_sparse-0.6.8-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'preinstallopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'source_tmpl': '0.6.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_sparse/archive/'], + }), + ('torch_cluster', '1.5.8', { + 'patches': ['torch_cluster-1.5.8-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.5.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_cluster/archive/'], + }), + ('torch_spline_conv', '1.2.0', { + 'patches': ['torch_spline_conv-1.2.0-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.2.0.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_spline_conv/archive'], + }), + ('ase', '3.21.0', { + 'source_urls': ['https://pypi.python.org/packages/source/a/ase'], + 'modulename': 'ase', + }), + ('python-louvain', '0.15', { + 'source_urls': ['https://pypi.python.org/packages/source/p/python-louvain'], + 'checksums': ['2a856edfbe29952a60a5538a84bb78cca18f6884a88b9325e85a11c8dd4917eb'], + 'modulename': 'community', + }), + ('tqdm', '4.56.0', { + 'source_urls': ['https://pypi.python.org/packages/source/t/tqdm'], + 'modulename': 'tqdm', + }), + ('torch_geometric', version, { + 'checksums': ['347f693bebcc8a621eda4867dafab91c04db5f596d7ed7ecb89b242f8ab5c6a1'], + }), +] + +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_70.patch b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..25bbf0ec24a03461821a0b38e4ef043efcb052d0 --- /dev/null +++ b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:10:11.609352000 +0100 ++++ setup.py 2021-01-20 10:10:37.525550350 +0100 +@@ -39,7 +39,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_70.patch b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..94ae43ed4ef1a4d0788e0d08a0564b8978868506 --- /dev/null +++ b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 09:53:22.085271000 +0100 ++++ setup.py 2021-01-20 09:53:54.835241801 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_70.patch b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..1a4f2d0fbc9e83c52a46f82dd5abfc6bdf00af82 --- /dev/null +++ b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:07:15.518446000 +0100 ++++ setup.py 2021-01-20 10:07:51.389877000 +0100 +@@ -53,7 +53,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + if sys.platform == 'win32': diff --git a/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_70.patch b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..e0a3e0ccf186aef0a4c22892b79ae0db810f351c --- /dev/null +++ b/Golden_Repo/jusuf_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:12:33.326687000 +0100 ++++ setup.py 2021-01-20 10:12:51.492198482 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/juwels_overlay/n/nvidia-driver/nvidia-driver-default.eb b/Golden_Repo/juwels_overlay/n/nvidia-driver/nvidia-driver-default.eb index 25770af0831d6fa2377c2cd946d98df5e324a217..4606bd345167e79e6690a45a391f96a9957d48b7 100644 --- a/Golden_Repo/juwels_overlay/n/nvidia-driver/nvidia-driver-default.eb +++ b/Golden_Repo/juwels_overlay/n/nvidia-driver/nvidia-driver-default.eb @@ -1,6 +1,6 @@ name = 'nvidia-driver' version = 'default' -realversion = '450.80.02' +realversion = '460.32.03' homepage = 'https://developer.nvidia.com/cuda-toolkit' description = """This is a set of libraries normally installed by the NVIDIA driver installer.""" diff --git a/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..9d04b48dea0557deaf3e779f78ca2508183b340c --- /dev/null +++ b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb @@ -0,0 +1,98 @@ +easyblock = 'PythonBundle' + +name = 'PyTorch-Geometric' +version = '1.6.3' +local_pytorch_ver = '1.7.0' +versionsuffix = '-Python-%%(pyver)s-PyTorch-%s' % local_pytorch_ver + +homepage = 'https://github.com/rusty1s/pytorch_geometric' +description = "PyTorch Geometric (PyG) is a geometric deep learning extension library for PyTorch." + +site_contacts = 't.breuer@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} + +local_pysuff = '-Python-%(pyver)s' +dependencies = [ + ('Python', '3.8.5'), + ('PyTorch', local_pytorch_ver, local_pysuff), + ('numba', '0.51.1', local_pysuff), + ('h5py', '2.10.0', '-serial%s' % local_pysuff), + ('scikit', '2020', local_pysuff), + ('torchvision', '0.8.1', local_pysuff), + ('trimesh', '3.8.11', local_pysuff), + ('METIS', '5.1.0', '-IDX64'), +] + +use_pip = True + +# this is a bundle of Python packages +exts_defaultclass = 'PythonPackage' +exts_download_dep_fail = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('gdist', '1.0.3', { + 'source_urls': ['https://pypi.python.org/packages/source/g/gdist'], + 'modulename': 'gdist', + }), + ('rdflib', '5.0.0', { + 'checksums': ['78149dd49d385efec3b3adfbd61c87afaf1281c30d3fcaf1b323b34f603fb155'], + 'modulename': 'rdflib', + }), + ('googledrivedownloader', '0.4', { + 'checksums': ['4b34c1337b2ff3bf2bd7581818efbdcaea7d50ffd484ccf80809688f5ca0e204'], + 'modulename': 'google_drive_downloader', + }), + ('plyfile', '0.7.2', { + 'checksums': ['59a25845d00a51098e6c9147c3c96ce89ad97395e256a4fabb4aed7cf7db5541'], + }), + ('torch_scatter', '2.0.5', { + 'patches': ['torch_scatter-2.0.5-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '2.0.5.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_scatter/archive/'], + }), + ('torch_sparse', '0.6.8', { + 'patches': ['torch_sparse-0.6.8-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'preinstallopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'source_tmpl': '0.6.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_sparse/archive/'], + }), + ('torch_cluster', '1.5.8', { + 'patches': ['torch_cluster-1.5.8-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.5.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_cluster/archive/'], + }), + ('torch_spline_conv', '1.2.0', { + 'patches': ['torch_spline_conv-1.2.0-sm_70.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.2.0.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_spline_conv/archive'], + }), + ('ase', '3.21.0', { + 'source_urls': ['https://pypi.python.org/packages/source/a/ase'], + 'modulename': 'ase', + }), + ('python-louvain', '0.15', { + 'source_urls': ['https://pypi.python.org/packages/source/p/python-louvain'], + 'checksums': ['2a856edfbe29952a60a5538a84bb78cca18f6884a88b9325e85a11c8dd4917eb'], + 'modulename': 'community', + }), + ('tqdm', '4.56.0', { + 'source_urls': ['https://pypi.python.org/packages/source/t/tqdm'], + 'modulename': 'tqdm', + }), + ('torch_geometric', version, { + 'checksums': ['347f693bebcc8a621eda4867dafab91c04db5f596d7ed7ecb89b242f8ab5c6a1'], + }), +] + +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_70.patch b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..25bbf0ec24a03461821a0b38e4ef043efcb052d0 --- /dev/null +++ b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:10:11.609352000 +0100 ++++ setup.py 2021-01-20 10:10:37.525550350 +0100 +@@ -39,7 +39,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_70.patch b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..94ae43ed4ef1a4d0788e0d08a0564b8978868506 --- /dev/null +++ b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 09:53:22.085271000 +0100 ++++ setup.py 2021-01-20 09:53:54.835241801 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_70.patch b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..1a4f2d0fbc9e83c52a46f82dd5abfc6bdf00af82 --- /dev/null +++ b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:07:15.518446000 +0100 ++++ setup.py 2021-01-20 10:07:51.389877000 +0100 +@@ -53,7 +53,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + if sys.platform == 'win32': diff --git a/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_70.patch b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_70.patch new file mode 100644 index 0000000000000000000000000000000000000000..e0a3e0ccf186aef0a4c22892b79ae0db810f351c --- /dev/null +++ b/Golden_Repo/juwels_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_70.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:12:33.326687000 +0100 ++++ setup.py 2021-01-20 10:12:51.492198482 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_70,code=sm_70', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/juwels_overlay/u/UCX/UCX-1.8.1.eb b/Golden_Repo/juwels_overlay/u/UCX/UCX-1.8.1.eb new file mode 100644 index 0000000000000000000000000000000000000000..740e9d2e3d5f84bb1f22280bac5c90f32d8f4e33 --- /dev/null +++ b/Golden_Repo/juwels_overlay/u/UCX/UCX-1.8.1.eb @@ -0,0 +1,68 @@ +easyblock = 'ConfigureMake' + +name = 'UCX' +version = '1.8.1' + +homepage = 'http://www.openucx.org' + +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications +""" + +site_contacts = 'Damian Alvarez <d.alvarez@fz-juelich.de>' + +toolchain = SYSTEM +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.gz'] + +builddependencies = [ + ('binutils', '2.34'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [ + # needed for --with-verbs + ('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel'), +] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDA', '11.0'), +] + +configopts = '--with-verbs ' # Build OpenFabrics support +configopts += '--without-java ' +configopts += '--disable-doxygen-doc ' + +configopts += '--enable-optimizations ' # Enable machine-specific optimizations, default: NO +# configopts += '--enable-tuning ' # Enable parameter tuning in run-time, default: NO +# configopts += '--enable-mt ' # Enable thread support in UCP and UCT, default: NO +configopts += '--disable-debug ' +configopts += '--disable-logging ' +configopts += '--disable-assertions ' +configopts += '--disable-params-check ' +configopts += '--disable-dependency-tracking ' +configopts += '--with-cuda=$EBROOTCUDA ' + +configopts += '--enable-cma ' # Enable Cross Memory Attach + +configopts += '--with-rc ' # Compile with IB Reliable Connection support +configopts += '--with-ud ' # Compile with IB Unreliable Datagram support +configopts += '--with-dc ' # Compile with IB Dynamic Connection support +configopts += '--with-mlx5-dv ' # Compile with mlx5 Direct Verbs support +configopts += '--with-ib-hw-tm ' # Compile with IB Tag Matching support +configopts += '--with-dm ' # Compile with Device Memory support +configopts += '--without-cm ' # Disable IB CM + +configopts += '--with-avx ' # Compile with AVX +configopts += '--with-gdrcopy ' # Compile with GDRCopy + +sanity_check_paths = { + 'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'], + 'dirs': ['include', 'lib', 'share'] +} + +moduleclass = 'system' diff --git a/Golden_Repo/juwels_overlay/u/UCX/UCX-1.9.0.eb b/Golden_Repo/juwels_overlay/u/UCX/UCX-1.9.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..be5e7d345e87b84378bcbf8af348c6888b20c666 --- /dev/null +++ b/Golden_Repo/juwels_overlay/u/UCX/UCX-1.9.0.eb @@ -0,0 +1,68 @@ +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 +""" + +site_contacts = 'Damian Alvarez <d.alvarez@fz-juelich.de>' + +toolchain = SYSTEM +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.gz'] + +builddependencies = [ + ('binutils', '2.34'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [ + # needed for --with-verbs + ('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel'), +] + +dependencies = [ + ('numactl', '2.0.13'), + ('CUDA', '11.0'), +] + +configopts = '--with-verbs ' # Build OpenFabrics support +configopts += '--without-java ' +configopts += '--disable-doxygen-doc ' + +configopts += '--enable-optimizations ' # Enable machine-specific optimizations, default: NO +# configopts += '--enable-tuning ' # Enable parameter tuning in run-time, default: NO +configopts += '--enable-mt ' # Enable thread support in UCP and UCT, default: NO +configopts += '--disable-debug ' +configopts += '--disable-logging ' +configopts += '--disable-assertions ' +configopts += '--disable-params-check ' +configopts += '--disable-dependency-tracking ' +configopts += '--with-cuda=$EBROOTCUDA ' + +configopts += '--enable-cma ' # Enable Cross Memory Attach + +configopts += '--with-rc ' # Compile with IB Reliable Connection support +configopts += '--with-ud ' # Compile with IB Unreliable Datagram support +configopts += '--with-dc ' # Compile with IB Dynamic Connection support +configopts += '--with-mlx5-dv ' # Compile with mlx5 Direct Verbs support +configopts += '--with-ib-hw-tm ' # Compile with IB Tag Matching support +configopts += '--with-dm ' # Compile with Device Memory support +configopts += '--without-cm ' # Disable IB CM + +configopts += '--with-avx ' # Compile with AVX +configopts += '--with-gdrcopy ' # Compile with GDRCopy + +sanity_check_paths = { + 'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'], + 'dirs': ['include', 'lib', 'share'] +} + +moduleclass = 'system' diff --git a/Golden_Repo/juwelsbooster_overlay/n/NVHPC/NVHPC-20.11-GCC-9.3.0.eb b/Golden_Repo/juwelsbooster_overlay/n/NVHPC/NVHPC-20.11-GCC-9.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..b9dbd75dd8d1cbd62799493f7774344ff89c6b2f --- /dev/null +++ b/Golden_Repo/juwelsbooster_overlay/n/NVHPC/NVHPC-20.11-GCC-9.3.0.eb @@ -0,0 +1,85 @@ +name = 'NVHPC' +version = '20.11' +local_gccver = '9.3.0' +versionsuffix = '-GCC-%s' % local_gccver + +homepage = 'https://developer.nvidia.com/hpc-sdk/' +description = """C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI)""" +site_contacts = 'a.herten@fz-juelich.de' + +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_2020_%%(version_major)s%%(version_minor)s_Linux_%s_cuda_multi.tar.gz' +sources = [local_tarball_tmpl % '%(arch)s'] +checksums = [ + { + local_tarball_tmpl % 'x86_64': + 'c80fc26e5ba586696f7030f03054c1aaca0752a891c7923faf47eb23b66857ec', + local_tarball_tmpl % 'ppc64le': + '99e5a5437e82f3914e0fe81feb761a5b599a3fe8b31f3c2cac8ae47e8cdc7b0f' + } +] + +local_gccver = '9.3.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.34', '', ('GCCcore', local_gccver)), + ('CUDA', '11.0', '', SYSTEM), + # This is necessary to avoid cases where just libnuma.so.1 is present in the system and -lnuma fails + ('numactl', '2.0.13', '', SYSTEM) +] + +module_add_cuda = False +cuda_compute_capabilities = "8.0" + +# 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.0' + +# 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" +# 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 = False # Remove compilers from PATH (Bring-your-own compilers) +# module_nvhpc_own_mpi = False # Add NVHPC's own pre-compiled OpenMPI +# module_add_math_libs = False # Add NVHPC's math libraries (which should be there from CUDA anyway) +# module_add_profilers = False # Add NVHPC's NVIDIA Profilers +# module_add_nccl = False # Add NVHPC's NCCL library +# module_add_nvshmem = False # Add NVHPC's NVSHMEM library +# module_add_cuda = False # 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' + +# We use a HMNS, so let's enforce a unique compiler +modluafooter = ''' +family("compiler") +add_property("arch","gpu") +''' + +# Always do a recursive unload on compilers +recursive_module_unload = True diff --git a/Golden_Repo/juwelsbooster_overlay/n/nvidia-driver/nvidia-driver-default.eb b/Golden_Repo/juwelsbooster_overlay/n/nvidia-driver/nvidia-driver-default.eb index 25770af0831d6fa2377c2cd946d98df5e324a217..4606bd345167e79e6690a45a391f96a9957d48b7 100644 --- a/Golden_Repo/juwelsbooster_overlay/n/nvidia-driver/nvidia-driver-default.eb +++ b/Golden_Repo/juwelsbooster_overlay/n/nvidia-driver/nvidia-driver-default.eb @@ -1,6 +1,6 @@ name = 'nvidia-driver' version = 'default' -realversion = '450.80.02' +realversion = '460.32.03' homepage = 'https://developer.nvidia.com/cuda-toolkit' description = """This is a set of libraries normally installed by the NVIDIA driver installer.""" diff --git a/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..9577412ca9bafb7c907f3e0d16d9c94cd2dbf8b5 --- /dev/null +++ b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/PyTorch-Geometric-1.6.3-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5-PyTorch-1.7.0.eb @@ -0,0 +1,94 @@ +easyblock = 'PythonBundle' + +name = 'PyTorch-Geometric' +version = '1.6.3' +local_pytorch_ver = '1.7.0' +versionsuffix = '-Python-%%(pyver)s-PyTorch-%s' % local_pytorch_ver + +homepage = 'https://github.com/rusty1s/pytorch_geometric' +description = "PyTorch Geometric (PyG) is a geometric deep learning extension library for PyTorch." + +site_contacts = 't.breuer@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} + +local_pysuff = '-Python-%(pyver)s' +dependencies = [ + ('Python', '3.8.5'), + ('PyTorch', local_pytorch_ver, local_pysuff), + ('numba', '0.51.1', local_pysuff), + ('h5py', '2.10.0', '-serial%s' % local_pysuff), + ('scikit', '2020', local_pysuff), + ('torchvision', '0.8.1', local_pysuff), + ('trimesh', '3.8.11', local_pysuff), + ('METIS', '5.1.0', '-IDX64'), +] + +use_pip = True + +# this is a bundle of Python packages +exts_defaultclass = 'PythonPackage' +exts_download_dep_fail = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('gdist', '1.0.3', { + 'source_urls': ['https://pypi.python.org/packages/source/g/gdist'], + 'modulename': 'gdist', + }), + ('googledrivedownloader', '0.4', { + 'checksums': ['4b34c1337b2ff3bf2bd7581818efbdcaea7d50ffd484ccf80809688f5ca0e204'], + 'modulename': 'google_drive_downloader', + }), + ('plyfile', '0.7.2', { + 'checksums': ['59a25845d00a51098e6c9147c3c96ce89ad97395e256a4fabb4aed7cf7db5541'], + }), + ('torch_scatter', '2.0.5', { + 'patches': ['torch_scatter-2.0.5-sm_80.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '2.0.5.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_scatter/archive/'], + }), + ('torch_sparse', '0.6.8', { + 'patches': ['torch_sparse-0.6.8-sm_80.patch'], + 'prebuildopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'preinstallopts': 'FORCE_CUDA=1 WITH_METIS=1', + 'source_tmpl': '0.6.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_sparse/archive/'], + }), + ('torch_cluster', '1.5.8', { + 'patches': ['torch_cluster-1.5.8-sm_80.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.5.8.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_cluster/archive/'], + }), + ('torch_spline_conv', '1.2.0', { + 'patches': ['torch_spline_conv-1.2.0-sm_80.patch'], + 'prebuildopts': 'FORCE_CUDA=1', + 'preinstallopts': 'FORCE_CUDA=1', + 'source_tmpl': '1.2.0.tar.gz', + 'source_urls': ['https://github.com/rusty1s/pytorch_spline_conv/archive'], + }), + ('ase', '3.21.0', { + 'source_urls': ['https://pypi.python.org/packages/source/a/ase'], + 'modulename': 'ase', + }), + ('python-louvain', '0.15', { + 'source_urls': ['https://pypi.python.org/packages/source/p/python-louvain'], + 'checksums': ['2a856edfbe29952a60a5538a84bb78cca18f6884a88b9325e85a11c8dd4917eb'], + 'modulename': 'community', + }), + ('tqdm', '4.56.0', { + 'source_urls': ['https://pypi.python.org/packages/source/t/tqdm'], + 'modulename': 'tqdm', + }), + ('torch_geometric', version, { + 'checksums': ['347f693bebcc8a621eda4867dafab91c04db5f596d7ed7ecb89b242f8ab5c6a1'], + }), +] + +sanity_pip_check = True + +moduleclass = 'devel' diff --git a/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_80.patch b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_80.patch new file mode 100644 index 0000000000000000000000000000000000000000..c80da06e0469c2c613424a4df95950c022c60895 --- /dev/null +++ b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_cluster-1.5.8-sm_80.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:10:11.609352000 +0100 ++++ setup.py 2021-01-20 10:10:37.525550350 +0100 +@@ -39,7 +39,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_80,code=sm_80', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_80.patch b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_80.patch new file mode 100644 index 0000000000000000000000000000000000000000..ec5521c3024f876be8c5f6999256757e7d0631ec --- /dev/null +++ b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_scatter-2.0.5-sm_80.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 09:53:22.085271000 +0100 ++++ setup.py 2021-01-20 09:53:54.835241801 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_80,code=sm_80', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_80.patch b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_80.patch new file mode 100644 index 0000000000000000000000000000000000000000..5439544a81cb588a07218faeb89272c07d9b2595 --- /dev/null +++ b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_sparse-0.6.8-sm_80.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:07:15.518446000 +0100 ++++ setup.py 2021-01-20 10:07:51.389877000 +0100 +@@ -53,7 +53,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_80,code=sm_80', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + if sys.platform == 'win32': diff --git a/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_80.patch b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_80.patch new file mode 100644 index 0000000000000000000000000000000000000000..a3ae24b363e5bce2e2937c14301af194bd14cc14 --- /dev/null +++ b/Golden_Repo/juwelsbooster_overlay/p/PyTorch-Geometric/torch_spline_conv-1.2.0-sm_80.patch @@ -0,0 +1,11 @@ +--- setup_orig.py 2021-01-20 10:12:33.326687000 +0100 ++++ setup.py 2021-01-20 10:12:51.492198482 +0100 +@@ -26,7 +26,7 @@ + define_macros += [('WITH_CUDA', None)] + nvcc_flags = os.getenv('NVCC_FLAGS', '') + nvcc_flags = [] if nvcc_flags == '' else nvcc_flags.split(' ') +- nvcc_flags += ['-arch=sm_35', '--expt-relaxed-constexpr'] ++ nvcc_flags += ['-gencode=arch=compute_80,code=sm_80', '--expt-relaxed-constexpr'] + extra_compile_args['nvcc'] = nvcc_flags + + extensions_dir = osp.join(osp.dirname(osp.abspath(__file__)), 'csrc') diff --git a/Golden_Repo/juwelsbooster_overlay/u/UCX/UCX-1.8.1.eb b/Golden_Repo/juwelsbooster_overlay/u/UCX/UCX-1.8.1.eb index df14257476b2a77486b622bf5d35c9ed4795803a..740e9d2e3d5f84bb1f22280bac5c90f32d8f4e33 100644 --- a/Golden_Repo/juwelsbooster_overlay/u/UCX/UCX-1.8.1.eb +++ b/Golden_Repo/juwelsbooster_overlay/u/UCX/UCX-1.8.1.eb @@ -55,6 +55,7 @@ configopts += '--with-dc ' # Compile with IB Dynamic Connection sup configopts += '--with-mlx5-dv ' # Compile with mlx5 Direct Verbs support configopts += '--with-ib-hw-tm ' # Compile with IB Tag Matching support configopts += '--with-dm ' # Compile with Device Memory support +configopts += '--without-cm ' # Disable IB CM configopts += '--with-avx ' # Compile with AVX configopts += '--with-gdrcopy ' # Compile with GDRCopy diff --git a/Golden_Repo/juwelsbooster_overlay/u/UCX/UCX-1.9.0.eb b/Golden_Repo/juwelsbooster_overlay/u/UCX/UCX-1.9.0.eb index cdf6510cf9b9cd517a3d306120d6215db617c86c..be5e7d345e87b84378bcbf8af348c6888b20c666 100644 --- a/Golden_Repo/juwelsbooster_overlay/u/UCX/UCX-1.9.0.eb +++ b/Golden_Repo/juwelsbooster_overlay/u/UCX/UCX-1.9.0.eb @@ -55,6 +55,7 @@ configopts += '--with-dc ' # Compile with IB Dynamic Connection sup configopts += '--with-mlx5-dv ' # Compile with mlx5 Direct Verbs support configopts += '--with-ib-hw-tm ' # Compile with IB Tag Matching support configopts += '--with-dm ' # Compile with Device Memory support +configopts += '--without-cm ' # Disable IB CM configopts += '--with-avx ' # Compile with AVX configopts += '--with-gdrcopy ' # Compile with GDRCopy diff --git a/Golden_Repo/juwelsbooster_overlay/v/Vampir/Vampir-9.9.0.eb b/Golden_Repo/juwelsbooster_overlay/v/Vampir/Vampir-9.9.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..42676131160b2e95bb2f113cdc4eb5d25854c707 --- /dev/null +++ b/Golden_Repo/juwelsbooster_overlay/v/Vampir/Vampir-9.9.0.eb @@ -0,0 +1,40 @@ +# This is an easyconfig file for EasyBuild, see https://github.com/hpcugent/easybuild +# Copyright:: Copyright 2013 Juelich Supercomputing Centre, Germany +# Authors:: Bernd Mohr <b.mohr@fz-juelich.de> +# License:: New BSD +# +# This work is based from experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ +## +easyblock = 'Binary' + +name = "Vampir" +version = "9.9.0" +local_archsuffix = "-linux-x86_64" + +homepage = 'http://www.vampir.eu' +description = """The VAMPIR software tool provides an easy-to-use framework that enables +developers to quickly display and analyze arbitrary program behavior at any level of detail. +The tool suite implements optimized event analysis algorithms and customizable displays that +enable fast and interactive rendering of very complex performance monitoring data. + +""" + +site_contacts = ['Michael Knobloch <m.knobloch@fz-juelich.de>', 'Software Analysis and Tools <swat@fz-juelich.de>'] + +toolchain = SYSTEM + +sources = ['vampir-%s%s-setup.sh' % (version, local_archsuffix)] + +install_cmd = './vampir-%(version)s-linux-x86_64-setup.sh --silent --instdir=%(installdir)s' + +sanity_check_paths = { + 'files': ["bin/vampir", "doc/vampir-manual.pdf"], + 'dirs': [] +} + +modextravars = { + 'VAMPIR_LICENSE': '/p/software/juwelsbooster/licenses/vampir/vampir.license', +} + +moduleclass = 'tools' diff --git a/Golden_Repo/juwelsbooster_overlay/v/VampirServer/VampirServer-9.9.0-gpsmpi-2020.eb b/Golden_Repo/juwelsbooster_overlay/v/VampirServer/VampirServer-9.9.0-gpsmpi-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..239a857fd6b511eda9c07f2907c3a5537f988b48 --- /dev/null +++ b/Golden_Repo/juwelsbooster_overlay/v/VampirServer/VampirServer-9.9.0-gpsmpi-2020.eb @@ -0,0 +1,61 @@ +# This is an easyconfig file for EasyBuild, see https://github.com/hpcugent/easybuild +# Copyright:: Copyright 2013 Juelich Supercomputing Centre, Germany +# Authors:: Bernd Mohr <b.mohr@fz-juelich.de> +# License:: New BSD +# +# This work is based from experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ +## +easyblock = 'Binary' + +name = "VampirServer" +version = "9.9.0" + +homepage = 'http://www.vampir.eu' +description = """The VAMPIR software tool provides an easy-to-use framework that enables +developers to quickly display and analyze arbitrary program behavior at any level of detail. +The tool suite implements optimized event analysis algorithms and customizable displays that +enable fast and interactive rendering of very complex performance monitoring data. +""" + +usage = """ +To start VampirServer +module load Vampir VampirServer +vampir & +BATCH_OPT="--account=<budget> --partition=<partition>" vampirserver start -n 4 mpi +(note server + port + server_id) +- Use it +Vampir GUI-> open other -> remote file -> server + port +- To stop VampirServer +vampirserver stop <server_id> +""" + +site_contacts = ['Michael Knobloch <m.knobloch@fz-juelich.de>', 'Software Analysis and Tools <swat@fz-juelich.de>'] + +toolchain = {'name': 'gpsmpi', 'version': '2020'} + +toolchainopts = {"usempi": True} + +sources = ['vampirserver-%s-linux-x86_64-setup.sh' % (version)] + +install_cmd = ('./vampirserver-%(version)s-linux-x86_64-setup.sh --silent --instdir=%(installdir)s ' + '&& %(installdir)s/bin/vampirserver config --silent') + +sanity_check_paths = { + 'files': ["bin/vampirserver", "doc/vampirserver-manual.pdf"], + 'dirs': [] +} + +# Remove Cray-specific 'ap' launcher, +# use SLURM launcher as MPI launcher and default +postinstallcmds = [ + 'rm %(installdir)s/etc/server/launcher/ap', + '''sed -i s/'BATCH_OPT=""'/'#BATCH_OPT=""'/g %(installdir)s/etc/server/launcher/custom/slurm''', + 'cp %(installdir)s/etc/server/launcher/custom/slurm %(installdir)s/etc/server/launcher/mpi', +] + +modextravars = { + 'VAMPIR_LICENSE': '/p/software/juwelsbooster/licenses/vampir/vampir.license', +} + +moduleclass = 'perf' diff --git a/Golden_Repo/l/LAMMPS/LAMMPS-24Dec2020-gpsmkl-2020-CUDA.eb b/Golden_Repo/l/LAMMPS/LAMMPS-24Dec2020-gpsmkl-2020-CUDA.eb new file mode 100644 index 0000000000000000000000000000000000000000..9c542791db07c5be762008ee87596fe7d80461cc --- /dev/null +++ b/Golden_Repo/l/LAMMPS/LAMMPS-24Dec2020-gpsmkl-2020-CUDA.eb @@ -0,0 +1,168 @@ +# Installation command used: +# eb --include-easyblocks=$PWD/Custom_EasyBlocks/lammps.py,"$EASYBUILD_INCLUDE_EASYBLOCKS"\\ +# --mpi-cmd-template='echo %(nr_ranks)s && %(cmd)s' \\ +# Golden_Repo/l/LAMMPS/LAMMPS-22Oct2020-intel-para-2020-Python-3.8.5.eb +name = 'LAMMPS' +version = '24Dec2020' +versionsuffix = '-CUDA' + +homepage = 'https://lammps.sandia.gov/' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +site_contacts = 'a.kreuzer@fz-juelich.de' + +toolchain = {'name': 'gpsmkl', 'version': '2020'} +toolchainopts = {'openmp': True, 'cstd': 'c++11', 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [ + 'patch_%(version)s.tar.gz', + {'extract_cmd': 'cp %s %(builddir)s', 'filename': 'lammps_vs_yaff_test_single_point_energy.py'}, +] + +builddependencies = [ + ('CMake', '3.18.0'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.0', '-Python-%(pyver)s'), +] +dependencies = [ + ('CUDA', '11.0', '', SYSTEM), + ('Python', '3.8.5'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.5'), + ('netCDF', '4.7.4'), + ('GSL', '2.6'), + ('zlib', '1.2.11'), + ('gzip', '1.10'), + ('cURL', '7.71.1'), + ('HDF5', '1.10.6'), + ('tbb', '2020.3'), + ('PCRE', '8.44'), + ('libxml2', '2.9.10'), + ('FFmpeg', '4.3.1'), + ('Voro++', '0.4.6'), + ('kim-api', '2.1.3'), + ('Eigen', '3.3.7'), + ('yaff', '1.6.0', '-Python-%(pyver)s'), + ('PLUMED', '2.6.1'), + ('ScaFaCoS', '1.0.1'), + # See below for why this is not included + # ('VTK', '8.2.0', local_python_versionsuffix), +] + +# not enabled (yet), needs more work/additional dependencies: +# ADIOS - https://lammps.sandia.gov/doc/Build_extras.html#user-adios-package +# AWPMD - https://lammps.sandia.gov/doc/Build_extras.html#user-awpmd-package +# QMMM - https://lammps.sandia.gov/doc/Packages_details.html#pkg-user-qmmm +# QUIP - https://lammps.sandia.gov/doc/Build_extras.html#user-quip-package +# VTK - support is available in the foss version but currently fails to build for intel +# due to https://software.intel.com/en-us/forums/intel-fortran-compiler/topic/746611 +# see https://github.com/lammps/lammps/issues/1964 for details +user_packages = [ + 'ATC', + 'BOCS', + 'CGDNA', + 'CGSDK', + 'COLVARS', + 'DIFFRACTION', + 'DPD', + 'DRUDE', + 'EFF', + 'FEP', + 'H5MD', + 'LB', + 'MANIFOLD', + 'MEAMC', + 'MESODPD', + 'MESONT', + 'MGPT', + 'MISC', + 'MOFFF', + 'MOLFILE', + 'NETCDF', + 'PHONON', + 'PLUMED', + 'PTM', + 'QTB', + 'REACTION', + 'REAXC', + 'SCAFACOS', + 'SDPD', + 'SMD', + 'SMTBQ', + 'SPH', + 'TALLY', + 'UEF', + 'YAFF', +] +enhance_sanity_check = True + +cuda_compute_capabilities = ['7.0'] + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# Use the bfd linker for C++ (this will only be picked up when using Kokkos) +preconfigopts = 'export CXXFLAGS="-fuse-ld=bfd $CXXFLAGS" &&' +# docs require virtualenv (which we don't have) +configopts = ' -DBUILD_DOC=off -DPKG_USER-INTEL=off ' + +# auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) +# +# not enabled (yet), needs more work/additional dependencies: +# 'LATTE', - https://lammps.sandia.gov/doc/Build_extras.html#latte-package +# 'MSCG', - https://lammps.sandia.gov/doc/Build_extras.html#mscg-package +general_packages = [ + 'ASPHERE', + 'BODY', + 'CLASS2', + 'COLLOID', + 'COMPRESS', + 'CORESHELL', + 'DIPOLE', + 'GRANULAR', + 'KIM', + 'KSPACE', + 'MANYBODY', + 'MC', + 'MESSAGE', + 'MISC', + 'MLIAP', + 'MOLECULE', + 'MPIIO', + 'PERI', + 'POEMS', + 'PYTHON', + 'QEQ', + 'REPLICA', + 'RIGID', + 'SHOCK', + 'SNAP', + 'SPIN', + 'SRD', + 'VORONOI', +] + +# run short test case to make sure installation doesn't produce blatently incorrect results; +# this catches a problem where having the USER-INTEL package enabled causes trouble when installing with intel/2019b +# (requires an MPI context for intel/2020a) +# sanity_check_commands = ['cd %(builddir)s && %(mpi_cmd_prefix)s python lammps_vs_yaff_test_single_point_energy.py'] + +modluafooter = ''' +add_property("arch","gpu") +''' + +moduleclass = 'chem' diff --git a/Golden_Repo/l/LAMMPS/LAMMPS-24Dec2020-gpsmkl-2020.eb b/Golden_Repo/l/LAMMPS/LAMMPS-24Dec2020-gpsmkl-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..49797ab28bdc54178c5f1b68512a695fdcb589c5 --- /dev/null +++ b/Golden_Repo/l/LAMMPS/LAMMPS-24Dec2020-gpsmkl-2020.eb @@ -0,0 +1,158 @@ +# Installation command used: +# eb --include-easyblocks=$PWD/Custom_EasyBlocks/lammps.py,"$EASYBUILD_INCLUDE_EASYBLOCKS"\\ +# --mpi-cmd-template='echo %(nr_ranks)s && %(cmd)s' \\ +# Golden_Repo/l/LAMMPS/LAMMPS-22Oct2020-intel-para-2020-Python-3.8.5.eb +name = 'LAMMPS' +version = '24Dec2020' + +homepage = 'https://lammps.sandia.gov/' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +site_contacts = 'a.kreuzer@fz-juelich.de' + +toolchain = {'name': 'gpsmkl', 'version': '2020'} +toolchainopts = {'openmp': True, 'cstd': 'c++11', 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [ + 'patch_%(version)s.tar.gz', + {'extract_cmd': 'cp %s %(builddir)s', 'filename': 'lammps_vs_yaff_test_single_point_energy.py'}, +] + +builddependencies = [ + ('CMake', '3.18.0'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.0', '-Python-%(pyver)s'), +] +dependencies = [ + ('Python', '3.8.5'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.5'), + ('netCDF', '4.7.4'), + ('GSL', '2.6'), + ('zlib', '1.2.11'), + ('gzip', '1.10'), + ('cURL', '7.71.1'), + ('HDF5', '1.10.6'), + ('tbb', '2020.3'), + ('PCRE', '8.44'), + ('libxml2', '2.9.10'), + ('FFmpeg', '4.3.1'), + ('Voro++', '0.4.6'), + ('kim-api', '2.1.3'), + ('Eigen', '3.3.7'), + ('yaff', '1.6.0', '-Python-%(pyver)s'), + ('PLUMED', '2.6.1'), + ('ScaFaCoS', '1.0.1'), + # See below for why this is not included + # ('VTK', '8.2.0', local_python_versionsuffix), +] + +# not enabled (yet), needs more work/additional dependencies: +# ADIOS - https://lammps.sandia.gov/doc/Build_extras.html#user-adios-package +# AWPMD - https://lammps.sandia.gov/doc/Build_extras.html#user-awpmd-package +# QMMM - https://lammps.sandia.gov/doc/Packages_details.html#pkg-user-qmmm +# QUIP - https://lammps.sandia.gov/doc/Build_extras.html#user-quip-package +# VTK - support is available in the foss version but currently fails to build for intel +# due to https://software.intel.com/en-us/forums/intel-fortran-compiler/topic/746611 +# see https://github.com/lammps/lammps/issues/1964 for details +user_packages = [ + 'ATC', + 'BOCS', + 'CGDNA', + 'CGSDK', + 'COLVARS', + 'DIFFRACTION', + 'DPD', + 'DRUDE', + 'EFF', + 'FEP', + 'H5MD', + 'LB', + 'MANIFOLD', + 'MEAMC', + 'MESODPD', + 'MESONT', + 'MGPT', + 'MISC', + 'MOFFF', + 'MOLFILE', + 'NETCDF', + 'PHONON', + 'PLUMED', + 'PTM', + 'QTB', + 'REACTION', + 'REAXC', + 'SCAFACOS', + 'SDPD', + 'SMD', + 'SMTBQ', + 'SPH', + 'TALLY', + 'UEF', + 'YAFF', +] +enhance_sanity_check = True + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# docs require virtualenv (which we don't have) +configopts = ' -DBUILD_DOC=off -DPKG_USER-INTEL=off ' + +# auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) +# +# not enabled (yet), needs more work/additional dependencies: +# 'LATTE', - https://lammps.sandia.gov/doc/Build_extras.html#latte-package +# 'MSCG', - https://lammps.sandia.gov/doc/Build_extras.html#mscg-package +general_packages = [ + 'ASPHERE', + 'BODY', + 'CLASS2', + 'COLLOID', + 'COMPRESS', + 'CORESHELL', + 'DIPOLE', + 'GRANULAR', + 'KIM', + 'KSPACE', + 'MANYBODY', + 'MC', + 'MESSAGE', + 'MISC', + 'MLIAP', + 'MOLECULE', + 'MPIIO', + 'PERI', + 'POEMS', + 'PYTHON', + 'QEQ', + 'REPLICA', + 'RIGID', + 'SHOCK', + 'SNAP', + 'SPIN', + 'SRD', + 'VORONOI', +] + +# run short test case to make sure installation doesn't produce blatently incorrect results; +# this catches a problem where having the USER-INTEL package enabled causes trouble when installing with intel/2019b +# (requires an MPI context for intel/2020a) +# sanity_check_commands = ['cd %(builddir)s && %(mpi_cmd_prefix)s python lammps_vs_yaff_test_single_point_energy.py'] + +moduleclass = 'chem' diff --git a/Golden_Repo/l/LAMMPS/LAMMPS-24Dec2020-intel-para-2020.eb b/Golden_Repo/l/LAMMPS/LAMMPS-24Dec2020-intel-para-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..652bd42b756c9e5ad170969b2fe66d098a3e959e --- /dev/null +++ b/Golden_Repo/l/LAMMPS/LAMMPS-24Dec2020-intel-para-2020.eb @@ -0,0 +1,158 @@ +# Installation command used: +# eb --include-easyblocks=$PWD/Custom_EasyBlocks/lammps.py,"$EASYBUILD_INCLUDE_EASYBLOCKS"\\ +# --mpi-cmd-template='echo %(nr_ranks)s && %(cmd)s' \\ +# Golden_Repo/l/LAMMPS/LAMMPS-22Oct2020-intel-para-2020-Python-3.8.5.eb +name = 'LAMMPS' +version = '24Dec2020' + +homepage = 'https://lammps.sandia.gov/' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +site_contacts = 'a.kreuzer@fz-juelich.de' + +toolchain = {'name': 'intel-para', 'version': '2020'} +toolchainopts = {'openmp': True, 'cstd': 'c++11', 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [ + 'patch_%(version)s.tar.gz', + {'extract_cmd': 'cp %s %(builddir)s', 'filename': 'lammps_vs_yaff_test_single_point_energy.py'}, +] + +builddependencies = [ + ('CMake', '3.18.0'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.0', '-Python-%(pyver)s'), +] +dependencies = [ + ('Python', '3.8.5'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.5'), + ('netCDF', '4.7.4'), + ('GSL', '2.6'), + ('zlib', '1.2.11'), + ('gzip', '1.10'), + ('cURL', '7.71.1'), + ('HDF5', '1.10.6'), + ('tbb', '2020.3'), + ('PCRE', '8.44'), + ('libxml2', '2.9.10'), + ('FFmpeg', '4.3.1'), + ('Voro++', '0.4.6'), + ('kim-api', '2.1.3'), + ('Eigen', '3.3.7'), + ('yaff', '1.6.0', '-Python-%(pyver)s'), + ('PLUMED', '2.6.1'), + ('ScaFaCoS', '1.0.1'), + # See below for why this is not included + # ('VTK', '8.2.0', local_python_versionsuffix), +] + +# not enabled (yet), needs more work/additional dependencies: +# ADIOS - https://lammps.sandia.gov/doc/Build_extras.html#user-adios-package +# AWPMD - https://lammps.sandia.gov/doc/Build_extras.html#user-awpmd-package +# QMMM - https://lammps.sandia.gov/doc/Packages_details.html#pkg-user-qmmm +# QUIP - https://lammps.sandia.gov/doc/Build_extras.html#user-quip-package +# VTK - support is available in the foss version but currently fails to build for intel +# due to https://software.intel.com/en-us/forums/intel-fortran-compiler/topic/746611 +# see https://github.com/lammps/lammps/issues/1964 for details +user_packages = [ + 'ATC', + 'BOCS', + 'CGDNA', + 'CGSDK', + 'COLVARS', + 'DIFFRACTION', + 'DPD', + 'DRUDE', + 'EFF', + 'FEP', + 'H5MD', + 'LB', + 'MANIFOLD', + 'MEAMC', + 'MESODPD', + 'MESONT', + 'MGPT', + 'MISC', + 'MOFFF', + 'MOLFILE', + 'NETCDF', + 'PHONON', + 'PLUMED', + 'PTM', + 'QTB', + 'REACTION', + 'REAXC', + 'SCAFACOS', + 'SDPD', + 'SMD', + 'SMTBQ', + 'SPH', + 'TALLY', + 'UEF', + 'YAFF', +] +enhance_sanity_check = True + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# docs require virtualenv (which we don't have) +configopts = ' -DBUILD_DOC=off -DPKG_USER-INTEL=off ' + +# auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) +# +# not enabled (yet), needs more work/additional dependencies: +# 'LATTE', - https://lammps.sandia.gov/doc/Build_extras.html#latte-package +# 'MSCG', - https://lammps.sandia.gov/doc/Build_extras.html#mscg-package +general_packages = [ + 'ASPHERE', + 'BODY', + 'CLASS2', + 'COLLOID', + 'COMPRESS', + 'CORESHELL', + 'DIPOLE', + 'GRANULAR', + 'KIM', + 'KSPACE', + 'MANYBODY', + 'MC', + 'MESSAGE', + 'MISC', + 'MLIAP', + 'MOLECULE', + 'MPIIO', + 'PERI', + 'POEMS', + 'PYTHON', + 'QEQ', + 'REPLICA', + 'RIGID', + 'SHOCK', + 'SNAP', + 'SPIN', + 'SRD', + 'VORONOI', +] + +# run short test case to make sure installation doesn't produce blatently incorrect results; +# this catches a problem where having the USER-INTEL package enabled causes trouble when installing with intel/2019b +# (requires an MPI context for intel/2020a) +# sanity_check_commands = ['cd %(builddir)s && %(mpi_cmd_prefix)s python lammps_vs_yaff_test_single_point_energy.py'] + +moduleclass = 'chem' diff --git a/Golden_Repo/m/METIS/METIS-5.1.0-GCCcore-9.3.0-IDX64.eb b/Golden_Repo/m/METIS/METIS-5.1.0-GCCcore-9.3.0-IDX64.eb new file mode 100644 index 0000000000000000000000000000000000000000..6f09fd0acd3edc23729604f2686b74268ddbb138 --- /dev/null +++ b/Golden_Repo/m/METIS/METIS-5.1.0-GCCcore-9.3.0-IDX64.eb @@ -0,0 +1,31 @@ +name = 'METIS' +version = '5.1.0' +versionsuffix = '-IDX64' + +homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/metis/overview' +description = """METIS is a set of serial programs for partitioning graphs, partitioning finite element meshes, +and producing fill reducing orderings for sparse matrices. The algorithms implemented in METIS are based on the +multilevel recursive-bisection, multilevel k-way, and multi-constraint partitioning schemes. +""" + +site_contacts = 'sc@fz-juelich.de' + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +sources = [SOURCELOWER_TAR_GZ] +source_urls = [ + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis', + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/OLD', +] + +patches = ['METIS-5.1.0-IDX64.patch'] + +builddependencies = [ + ('binutils', '2.34'), + ('CMake', '3.18.0') +] + +configopts = ['', 'shared=1'] + +moduleclass = 'math' diff --git a/Golden_Repo/m/METIS/METIS-5.1.0-IDX64.patch b/Golden_Repo/m/METIS/METIS-5.1.0-IDX64.patch new file mode 100644 index 0000000000000000000000000000000000000000..70816692329c2a4083b45f4abb2bc782b31cacb3 --- /dev/null +++ b/Golden_Repo/m/METIS/METIS-5.1.0-IDX64.patch @@ -0,0 +1,11 @@ +--- include/metis_orig.h 2021-01-20 15:05:51.807203000 +0100 ++++ include/metis.h 2021-01-20 15:07:06.391591000 +0100 +@@ -30,7 +30,7 @@ + GCC does provides these definitions in stdint.h, but it may require some + modifications on other architectures. + --------------------------------------------------------------------------*/ +-#define IDXTYPEWIDTH 32 ++#define IDXTYPEWIDTH 64 + + + /*-------------------------------------------------------------------------- diff --git a/Golden_Repo/n/NVHPC/NVHPC-20.11-GCC-9.3.0.eb b/Golden_Repo/n/NVHPC/NVHPC-20.11-GCC-9.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..31b0fc972fdf0a710b9e9ef9a70020a681e6d60d --- /dev/null +++ b/Golden_Repo/n/NVHPC/NVHPC-20.11-GCC-9.3.0.eb @@ -0,0 +1,85 @@ +name = 'NVHPC' +version = '20.11' +local_gccver = '9.3.0' +versionsuffix = '-GCC-%s' % local_gccver + +homepage = 'https://developer.nvidia.com/hpc-sdk/' +description = """C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI)""" +site_contacts = 'a.herten@fz-juelich.de' + +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_2020_%%(version_major)s%%(version_minor)s_Linux_%s_cuda_multi.tar.gz' +sources = [local_tarball_tmpl % '%(arch)s'] +checksums = [ + { + local_tarball_tmpl % 'x86_64': + 'c80fc26e5ba586696f7030f03054c1aaca0752a891c7923faf47eb23b66857ec', + local_tarball_tmpl % 'ppc64le': + '99e5a5437e82f3914e0fe81feb761a5b599a3fe8b31f3c2cac8ae47e8cdc7b0f' + } +] + +local_gccver = '9.3.0' +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.34', '', ('GCCcore', local_gccver)), + ('CUDA', '11.0', '', SYSTEM), + # This is necessary to avoid cases where just libnuma.so.1 is present in the system and -lnuma fails + ('numactl', '2.0.13', '', SYSTEM) +] + +module_add_cuda = False +cuda_compute_capabilities = "7.0" + +# 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.0' + +# 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" +# 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 = False # Remove compilers from PATH (Bring-your-own compilers) +# module_nvhpc_own_mpi = False # Add NVHPC's own pre-compiled OpenMPI +# module_add_math_libs = False # Add NVHPC's math libraries (which should be there from CUDA anyway) +# module_add_profilers = False # Add NVHPC's NVIDIA Profilers +# module_add_nccl = False # Add NVHPC's NCCL library +# module_add_nvshmem = False # Add NVHPC's NVSHMEM library +# module_add_cuda = False # 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' + +# We use a HMNS, so let's enforce a unique compiler +modluafooter = ''' +family("compiler") +add_property("arch","gpu") +''' + +# Always do a recursive unload on compilers +recursive_module_unload = True diff --git a/Golden_Repo/n/nano/nano-5.5-GCCcore-9.3.0.eb b/Golden_Repo/n/nano/nano-5.5-GCCcore-9.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..4d0344e37406e862cb7db74b883065368d263ad0 --- /dev/null +++ b/Golden_Repo/n/nano/nano-5.5-GCCcore-9.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'nano' +version = '5.5' + +homepage = 'https://www.nano-editor.org/' +description = """GNU nano is a small and friendly text editor. Besides basic text editing, nano +offers features like undo/redo, syntax coloring, interactive search-and-replace, +auto-indentation, line numbers, word completion, file locking, backup files, and +internationalization support.""" + + +site_contacts = 'a.strube@fz-juelich.de' + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] + +builddependencies = [('binutils', '2.34')] + +sanity_check_paths = { + 'files': ['bin/nano'], + 'dirs': ['bin', 'share'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-ipsmpi-2020-mt.eb b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-ipsmpi-2020-mt.eb new file mode 100644 index 0000000000000000000000000000000000000000..4f62c13c0aa41434335bcea0a16950cadb2c689e --- /dev/null +++ b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-ipsmpi-2020-mt.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'netCDF-C++4' +version = '4.3.1' + +homepage = 'http://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data. +""" + +site_contacts = 's.luehrs@fz-juelich.de' + +toolchain = {'name': 'ipsmpi', 'version': '2020-mt'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/Unidata/netcdf-cxx4/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e3fe3d2ec06c1c2772555bf1208d220aab5fee186d04bd265219b0bc7a978edc'] + +dependencies = [('netCDF', '4.7.4')] + +sanity_check_paths = { + 'files': ['include/netcdf', 'lib/libnetcdf_c++4.a', 'lib/libnetcdf_c++4.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'data' diff --git a/Golden_Repo/n/netCDF-Fortran/netCDF-Fortran-4.5.3-ipsmpi-2020-mt.eb b/Golden_Repo/n/netCDF-Fortran/netCDF-Fortran-4.5.3-ipsmpi-2020-mt.eb new file mode 100644 index 0000000000000000000000000000000000000000..fefcf3167349fa45ceced87f6db55d69db231140 --- /dev/null +++ b/Golden_Repo/n/netCDF-Fortran/netCDF-Fortran-4.5.3-ipsmpi-2020-mt.eb @@ -0,0 +1,24 @@ +name = 'netCDF-Fortran' +version = '4.5.3' + +homepage = 'http://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data. +""" + +site_contacts = 's.luehrs@fz-juelich.de' + +toolchain = {'name': 'ipsmpi', 'version': '2020-mt'} +toolchainopts = {'pic': True} + +source_urls = [ + 'ftp://ftp.unidata.ucar.edu/pub/netcdf/', + 'ftp://ftp.unidata.ucar.edu/pub/netcdf/old', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['123a5c6184336891e62cf2936b9f2d1c54e8dee299cfd9d2c1a1eb05dd668a74'] + +dependencies = [('netCDF', '4.7.4')] + +moduleclass = 'data' diff --git a/Golden_Repo/n/netCDF/netCDF-4.7.4-ipsmpi-2020-mt.eb b/Golden_Repo/n/netCDF/netCDF-4.7.4-ipsmpi-2020-mt.eb new file mode 100644 index 0000000000000000000000000000000000000000..00e98ec126e2fd33ca9cb892bd195fc30ec71d08 --- /dev/null +++ b/Golden_Repo/n/netCDF/netCDF-4.7.4-ipsmpi-2020-mt.eb @@ -0,0 +1,44 @@ +name = 'netCDF' +version = '4.7.4' + +homepage = 'http://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data. +""" + +site_contacts = 's.luehrs@fz-juelich.de' + +toolchain = {'name': 'ipsmpi', 'version': '2020-mt'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/Unidata/netcdf-c/archive/'] +sources = ['v%s.tar.gz' % (version)] +checksums = ['99930ad7b3c4c1a8e8831fb061cb02b2170fc8e5ccaeda733bd99c3b9d31666b'] + +dependencies = [ + ('HDF5', '1.10.6'), + ('cURL', '7.71.1'), + ('Szip', '2.1.1'), + ('parallel-netcdf', '1.12.1') +] + +builddependencies = [ + ('CMake', '3.18.0'), + ('Doxygen', '1.8.18'), +] + +# make sure both static and shared libs are built +configopts = [ + "-DCURL_LIBRARY=$EBROOTCURL/lib/libcurl.so -DCURL_INCLUDE_DIR=$EBROOTCURL/include " + + "-DENABLE_PNETCDF=ON -DBUILD_SHARED_LIBS=ON", + "-DCURL_LIBRARY=$EBROOTCURL/lib/libcurl.so -DCURL_INCLUDE_DIR=$EBROOTCURL/include " + + "-DENABLE_PNETCDF=ON -DBUILD_SHARED_LIBS=OFF", +] + +sanity_check_paths = { + 'files': ["include/netcdf_mem.h", "include/netcdf_par.h"], + 'dirs': [], +} + +moduleclass = 'data' diff --git a/Golden_Repo/n/netcdf4-python/netcdf4-python-1.5.4-ipsmpi-2020-mt-Python-3.8.5.eb b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.5.4-ipsmpi-2020-mt-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..b7debd8155dada2b671127446263e5aafaf7462f --- /dev/null +++ b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.5.4-ipsmpi-2020-mt-Python-3.8.5.eb @@ -0,0 +1,44 @@ +easyblock = 'PythonBundle' + +name = 'netcdf4-python' +version = '1.5.4' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://unidata.github.io/netcdf4-python/' +description = """Python/numpy interface to netCDF.""" + +site_contacts = 's.luehrs@fz-juelich.de' + +toolchain = {'name': 'ipsmpi', 'version': '2020-mt'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/Unidata/netcdf4-python/archive/'] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('netCDF', '4.7.4'), + ('mpi4py', '3.0.3', versionsuffix), +] + +use_pip = True +sanity_pip_check = True +runtest = False # mpirun problems +skipsteps = ['sanitycheck'] # mpirun problems + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('cftime', '1.2.1', { + 'checksums': ['ab5d5076f7d3e699758a244ada7c66da96bae36e22b9e351ce0ececc36f0a57f'], + }), + (name, version, { + 'source_tmpl': 'netCDF4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4'], + 'checksums': ['941de6f3623b6474ecb4d043be5990690f7af4cf0d593b31be912627fe5aad03'], + }), +] + +fix_python_shebang_for = ['bin/*'] + +moduleclass = 'data' diff --git a/Golden_Repo/n/nlohmann-json/nlohmann-json-3.9.1-GCCcore-9.3.0.eb b/Golden_Repo/n/nlohmann-json/nlohmann-json-3.9.1-GCCcore-9.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..b740fe842b438eef851c04d8f36c9d96a033ed76 --- /dev/null +++ b/Golden_Repo/n/nlohmann-json/nlohmann-json-3.9.1-GCCcore-9.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'nlohmann-json' +version = '3.9.1' + +homepage = "https://github.com/nlohmann/json" +description = """JSON for modern C++ by Niels Lohmann +""" + +site_contacts = 'h.zilken@fz-juelich.de' + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/nlohmann/json/archive'] +sources = ['v%(version)s.tar.gz'] + +builddependencies = [ + ('CMake', '3.18.0'), + ('binutils', '2.34') +] + +sanity_check_paths = { + 'files': [], + 'dirs': [('include', 'lib64')] +} diff --git a/Golden_Repo/o/OpenGL/OpenGL-2020-GCCcore-9.3.0.eb b/Golden_Repo/o/OpenGL/OpenGL-2020-GCCcore-9.3.0.eb index cc6cebec4d0ad532c109dd61d97c5be277a37360..721d44504c721e52e00b21c0be71f4ccfe8f9505 100644 --- a/Golden_Repo/o/OpenGL/OpenGL-2020-GCCcore-9.3.0.eb +++ b/Golden_Repo/o/OpenGL/OpenGL-2020-GCCcore-9.3.0.eb @@ -165,18 +165,26 @@ postinstallcmds = [ 'cd %(installdir)s/lib && ln -sf ${EBROOTNVIDIA}/lib64/libGLESv1_CM_nvidia.so.1 .', 'cd %(installdir)s/lib && ln -sf ${EBROOTNVIDIA}/lib64/libGLESv2_nvidia.so.2 .', # EGL vendor ICDs - 'echo "{" > %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json', - 'echo " \"file_format_version\" : \"1.0.0\"," >> %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json', - 'echo " \"ICD\" : {" >> %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json', - 'echo " \"library_path\" : \"libEGL_nvidia.so.0\"" >> %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json', - 'echo " }" >> %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json', - 'echo "}" >> %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json', - 'echo "{" > %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json', - 'echo " \"file_format_version\" : \"1.0.0\"," >> %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json', - 'echo " \"ICD\" : {" >> %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json', - 'echo " \"library_path\" : \"libEGL_mesa.so.0\"" >> %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json', - 'echo " }" >> %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json', - 'echo "}" >> %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json', + ( + '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/10_nvidia.json; } << \'EOF\'\n' + '{\n' + ' \"file_format_version\" : \"1.0.0\",\n' + ' \"ICD\" : {\n' + ' \"library_path\" : \"libEGL_nvidia.so.0\"\n' + ' }\n' + '}\n' + 'EOF' + ), + ( + '{ cat > %(installdir)s/share/glvnd/egl_vendor.d/50_mesa.json; } << \'EOF\'\n' + '{\n' + ' \"file_format_version\" : \"1.0.0\",\n' + ' \"ICD\" : {\n' + ' \"library_path\" : \"libEGL_mesa.so.0\"\n' + ' }\n' + '}\n' + 'EOF' + ), # correct pkg-config of GLEW 'sed -i "/^libdir=/c\libdir=\${exec_prefix}\/lib" %(installdir)s/lib/pkgconfig/glew.pc', 'sed -i "/^prefix=/c\prefix=%(installdir)s" %(installdir)s/lib/pkgconfig/glew.pc', diff --git a/Golden_Repo/o/OptiX/OptiX-6.5.0.eb b/Golden_Repo/o/OptiX/OptiX-6.5.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..6232d58d8cf24e397ff21ada5b873c4d69284119 --- /dev/null +++ b/Golden_Repo/o/OptiX/OptiX-6.5.0.eb @@ -0,0 +1,33 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Authors:: Stephane Thiell <sthiell@stanford.edu> +## +easyblock = 'Binary' + +name = 'OptiX' +version = '6.5.0' + +homepage = 'https://developer.nvidia.com/optix' +description = """OptiX is NVIDIA SDK for easy ray tracing performance. + It provides a simple framework for accessing the GPU’s massive ray tracing + power using state-of-the-art GPU algorithms.""" + +toolchain = SYSTEM + +# Registration required. Download links: +# https://developer.nvidia.com/designworks/optix/download +# https://developer.nvidia.com/designworks/optix/downloads/legacy +sources = ['NVIDIA-OptiX-SDK-%(version)s-linux64.sh'] +checksums = ['eca09e617a267e18403ecccc715c5bc3a88729b81589a828fcb696435100a62e'] + +install_cmd = "./" + sources[0] + " --skip-license --prefix=%(installdir)s" + +sanity_check_paths = { + 'files': ["include/optix.h", "include/optix_cuda.h", "lib64/liboptix.%s" % SHLIB_EXT, + "lib64/liboptixu.%s" % SHLIB_EXT], + 'dirs': [] +} + +modextravars = {'OPTIX_HOME': '%(installdir)s'} + +moduleclass = 'vis' diff --git a/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020-complex.eb b/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020-complex.eb index 9f538ad515db6c2bb54e6234dd1862eff727766b..f7513363252d5d9a3d4c6c75706ec3694ba30b10 100644 --- a/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020-complex.eb +++ b/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020-complex.eb @@ -18,7 +18,7 @@ site_contacts = 'I. Gutheil (i.gutheil@fz-juelich.de)' toolchain = {'name': 'gpsmkl', 'version': '2020'} -toolchainopts = {'usempi': True} +toolchainopts = {'usempi': True, 'pic': True} source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] sources = ['petsc-lite-%s.tar.gz' % version] @@ -26,17 +26,18 @@ sources = ['petsc-lite-%s.tar.gz' % version] builddependencies = [ ('CMake', '3.18.0') ] -dependencies = [ - ('HDF5', '1.10.6'), -] download_deps = [ 'triangle', ] +dependencies = [ + ('HDF5', '1.10.6'), + ('METIS', '5.1.0'), + ('ParMETIS', '4.0.3'), +] + download_deps_static = [ - 'metis', - 'parmetis', 'spooles', 'superlu', 'superlu_dist', @@ -44,9 +45,11 @@ download_deps_static = [ 'chaco', ] -configopts = '--with-large-file-io --with-cxx-dialect=C++11 --with-pic=0 -fPIC ' +configopts = '--with-large-file-io --with-cxx-dialect=C++11 ' configopts += '--with-scalar-type=complex ' +shared_libs = 1 + postinstallcmds = [ 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/mpi/mpiaij.h %(installdir)s/include/petsc/private/', 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/seq/aij.h %(installdir)s/include/petsc/private/', diff --git a/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020-int8.eb b/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020-int8.eb index 8ff3938d0468003b87c601e4b286adc9beb0a061..b617483ebaf045773ad2c7a8d51db065000044e4 100644 --- a/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020-int8.eb +++ b/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020-int8.eb @@ -18,7 +18,7 @@ site_contacts = 'I. Gutheil (i.gutheil@fz-juelich.de)' toolchain = {'name': 'gpsmkl', 'version': '2020'} -toolchainopts = {'usempi': True} +toolchainopts = {'usempi': True, 'pic': True} source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] sources = ['petsc-lite-%s.tar.gz' % version] @@ -26,14 +26,15 @@ sources = ['petsc-lite-%s.tar.gz' % version] builddependencies = [ ('CMake', '3.18.0') ] -dependencies = [ - ('HDF5', '1.10.6'), -] download_deps = [ 'triangle', ] +dependencies = [ + ('HDF5', '1.10.6'), +] + download_deps_static = [ 'hypre', 'metis', @@ -42,9 +43,11 @@ download_deps_static = [ 'superlu_dist', ] -configopts = '--with-large-file-io --with-cxx-dialect=C++11 --with-pic=0 -fPIC ' +configopts = '--with-large-file-io --with-cxx-dialect=C++11 ' configopts += '--with-64-bit-indices=1 ' +shared_libs = 1 + postinstallcmds = [ 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/mpi/mpiaij.h %(installdir)s/include/petsc/private/', 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/seq/aij.h %(installdir)s/include/petsc/private/', diff --git a/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020.eb b/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020.eb index 48b295308ab12289e97ed058236414a7070b39aa..0fb1c75f9ca629a159592f669601ac481b9d0a5e 100644 --- a/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020.eb +++ b/Golden_Repo/p/PETSc/PETSc-3.14-gpsmkl-2020.eb @@ -17,7 +17,7 @@ site_contacts = 'I. Gutheil (i.gutheil@fz-juelich.de)' toolchain = {'name': 'gpsmkl', 'version': '2020'} -toolchainopts = {'usempi': True} +toolchainopts = {'usempi': True, 'pic': True} source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] sources = ['petsc-lite-%s.tar.gz' % version] @@ -25,18 +25,19 @@ sources = ['petsc-lite-%s.tar.gz' % version] builddependencies = [ ('CMake', '3.18.0') ] -dependencies = [ - ('HDF5', '1.10.6'), -] download_deps = [ 'triangle', ] +dependencies = [ + ('HDF5', '1.10.6'), + ('METIS', '5.1.0'), + ('ParMETIS', '4.0.3'), +] + download_deps_static = [ 'hypre', - 'metis', - 'parmetis', 'spooles', 'superlu', 'superlu_dist', @@ -47,7 +48,9 @@ download_deps_static = [ 'parms', ] -configopts = '--with-large-file-io --with-cxx-dialect=C++11 --with-pic=0 -fPIC ' +configopts = '--with-large-file-io --with-cxx-dialect=C++11 ' + +shared_libs = 1 postinstallcmds = [ 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/mpi/mpiaij.h %(installdir)s/include/petsc/private/', diff --git a/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020-complex.eb b/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020-complex.eb index a0073052eda3bae85c34e7842f03ba7535143eb0..ccee623724abefa6313540894776f71c4c88fcae 100644 --- a/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020-complex.eb +++ b/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020-complex.eb @@ -18,7 +18,7 @@ site_contacts = 'I. Gutheil (i.gutheil@fz-juelich.de)' toolchain = {'name': 'intel', 'version': '2020'} -toolchainopts = {'usempi': True} +toolchainopts = {'usempi': True, 'pic': True} source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] sources = ['petsc-lite-%s.tar.gz' % version] @@ -26,17 +26,18 @@ sources = ['petsc-lite-%s.tar.gz' % version] builddependencies = [ ('CMake', '3.18.0') ] -dependencies = [ - ('HDF5', '1.10.6'), -] download_deps = [ 'triangle', ] +dependencies = [ + ('HDF5', '1.10.6'), + ('METIS', '5.1.0'), + ('ParMETIS', '4.0.3'), +] + download_deps_static = [ - 'metis', - 'parmetis', 'spooles', 'superlu', 'superlu_dist', @@ -44,9 +45,11 @@ download_deps_static = [ 'chaco', ] -configopts = '--with-large-file-io --with-cxx-dialect=C++11 --with-pic=0 -fPIC ' +configopts = '--with-large-file-io --with-cxx-dialect=C++11 ' configopts += '--with-scalar-type=complex ' +shared_libs = 1 + postinstallcmds = [ 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/mpi/mpiaij.h %(installdir)s/include/petsc/private/', 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/seq/aij.h %(installdir)s/include/petsc/private/', diff --git a/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020-int8.eb b/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020-int8.eb index b49b8fcbfc0157ea4ef7ace4f49864e4a620163d..0d6b33e1e16016c22782c15f7fadc0f0319c7bf9 100644 --- a/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020-int8.eb +++ b/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020-int8.eb @@ -18,7 +18,7 @@ site_contacts = 'I. Gutheil (i.gutheil@fz-juelich.de)' toolchain = {'name': 'intel', 'version': '2020'} -toolchainopts = {'usempi': True} +toolchainopts = {'usempi': True, 'pic': True} source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] sources = ['petsc-lite-%s.tar.gz' % version] @@ -26,14 +26,15 @@ sources = ['petsc-lite-%s.tar.gz' % version] builddependencies = [ ('CMake', '3.18.0') ] -dependencies = [ - ('HDF5', '1.10.6'), -] download_deps = [ 'triangle', ] +dependencies = [ + ('HDF5', '1.10.6'), +] + download_deps_static = [ 'hypre', 'metis', @@ -42,9 +43,11 @@ download_deps_static = [ 'superlu_dist', ] -configopts = '--with-large-file-io --with-cxx-dialect=C++11 --with-pic=0 -fPIC ' +configopts = '--with-large-file-io --with-cxx-dialect=C++11 ' configopts += '--with-64-bit-indices=1 ' +shared_libs = 1 + postinstallcmds = [ 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/mpi/mpiaij.h %(installdir)s/include/petsc/private/', 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/seq/aij.h %(installdir)s/include/petsc/private/', diff --git a/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020.eb b/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020.eb index 5fbc54325f778b447ddcbaecc65ee720d123f795..fbcbb0d5d56e63d24bde89890c3383fc7c2623da 100644 --- a/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020.eb +++ b/Golden_Repo/p/PETSc/PETSc-3.14-intel-2020.eb @@ -17,7 +17,7 @@ site_contacts = 'I. Gutheil (i.gutheil@fz-juelich.de)' toolchain = {'name': 'intel', 'version': '2020'} -toolchainopts = {'usempi': True} +toolchainopts = {'usempi': True, 'pic': True} source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] sources = ['petsc-lite-%s.tar.gz' % version] @@ -25,18 +25,19 @@ sources = ['petsc-lite-%s.tar.gz' % version] builddependencies = [ ('CMake', '3.18.0') ] -dependencies = [ - ('HDF5', '1.10.6'), -] download_deps = [ 'triangle', ] +dependencies = [ + ('HDF5', '1.10.6'), + ('METIS', '5.1.0'), + ('ParMETIS', '4.0.3'), +] + download_deps_static = [ 'hypre', - 'metis', - 'parmetis', 'spooles', 'superlu', 'superlu_dist', @@ -47,7 +48,9 @@ download_deps_static = [ 'parms', ] -configopts = '--with-large-file-io --with-cxx-dialect=C++11 --with-pic=0 -fPIC ' +configopts = '--with-large-file-io --with-cxx-dialect=C++11 ' + +shared_libs = 1 postinstallcmds = [ 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/mpi/mpiaij.h %(installdir)s/include/petsc/private/', diff --git a/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020-complex.eb b/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020-complex.eb index 17b28ea1452895296412a711418ee765814500d4..692b7bd1419f126d6a68d99d679dd0bd612b5952 100644 --- a/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020-complex.eb +++ b/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020-complex.eb @@ -18,7 +18,7 @@ site_contacts = 'I. Gutheil (i.gutheil@fz-juelich.de)' toolchain = {'name': 'intel-para', 'version': '2020'} -toolchainopts = {'usempi': True} +toolchainopts = {'usempi': True, 'pic': True} source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] sources = ['petsc-lite-%s.tar.gz' % version] @@ -26,17 +26,18 @@ sources = ['petsc-lite-%s.tar.gz' % version] builddependencies = [ ('CMake', '3.18.0') ] -dependencies = [ - ('HDF5', '1.10.6'), -] download_deps = [ 'triangle', ] +dependencies = [ + ('HDF5', '1.10.6'), + ('METIS', '5.1.0'), + ('ParMETIS', '4.0.3'), +] + download_deps_static = [ - 'metis', - 'parmetis', 'spooles', 'superlu', 'superlu_dist', @@ -44,9 +45,11 @@ download_deps_static = [ 'chaco', ] -configopts = '--with-large-file-io --with-cxx-dialect=C++11 --with-pic=0 -fPIC ' +configopts = '--with-large-file-io --with-cxx-dialect=C++11 ' configopts += '--with-scalar-type=complex ' +shared_libs = 1 + postinstallcmds = [ 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/mpi/mpiaij.h %(installdir)s/include/petsc/private/', 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/seq/aij.h %(installdir)s/include/petsc/private/', diff --git a/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020-int8.eb b/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020-int8.eb index e1cc4a0b47899180e91a89558e80036c023362d5..45748e19859d74c75350e80bce4b5dfafff364fe 100644 --- a/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020-int8.eb +++ b/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020-int8.eb @@ -18,7 +18,7 @@ site_contacts = 'I. Gutheil (i.gutheil@fz-juelich.de)' toolchain = {'name': 'intel-para', 'version': '2020'} -toolchainopts = {'usempi': True} +toolchainopts = {'usempi': True, 'pic': True} source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] sources = ['petsc-lite-%s.tar.gz' % version] @@ -26,14 +26,15 @@ sources = ['petsc-lite-%s.tar.gz' % version] builddependencies = [ ('CMake', '3.18.0') ] -dependencies = [ - ('HDF5', '1.10.6'), -] download_deps = [ 'triangle', ] +dependencies = [ + ('HDF5', '1.10.6'), +] + download_deps_static = [ 'hypre', 'metis', @@ -42,9 +43,11 @@ download_deps_static = [ 'superlu_dist', ] -configopts = '--with-large-file-io --with-cxx-dialect=C++11 --with-pic=0 -fPIC ' +configopts = '--with-large-file-io --with-cxx-dialect=C++11 ' configopts += '--with-64-bit-indices=1 ' +shared_libs = 1 + postinstallcmds = [ 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/mpi/mpiaij.h %(installdir)s/include/petsc/private/', 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/seq/aij.h %(installdir)s/include/petsc/private/', diff --git a/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020.eb b/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020.eb index 93e674d974fe2f6b379685d2405086aee669d950..e5045ace6debeb196d4b8e69aae2090d548565a5 100644 --- a/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020.eb +++ b/Golden_Repo/p/PETSc/PETSc-3.14-intel-para-2020.eb @@ -17,7 +17,7 @@ site_contacts = 'I. Gutheil (i.gutheil@fz-juelich.de)' toolchain = {'name': 'intel-para', 'version': '2020'} -toolchainopts = {'usempi': True} +toolchainopts = {'usempi': True, 'pic': True} source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] sources = ['petsc-lite-%s.tar.gz' % version] @@ -25,18 +25,19 @@ sources = ['petsc-lite-%s.tar.gz' % version] builddependencies = [ ('CMake', '3.18.0') ] -dependencies = [ - ('HDF5', '1.10.6'), -] download_deps = [ 'triangle', ] +dependencies = [ + ('HDF5', '1.10.6'), + ('METIS', '5.1.0'), + ('ParMETIS', '4.0.3'), +] + download_deps_static = [ 'hypre', - 'metis', - 'parmetis', 'spooles', 'superlu', 'superlu_dist', @@ -47,7 +48,9 @@ download_deps_static = [ 'parms', ] -configopts = '--with-large-file-io --with-cxx-dialect=C++11 --with-pic=0 -fPIC ' +configopts = '--with-large-file-io --with-cxx-dialect=C++11 ' + +shared_libs = 1 postinstallcmds = [ 'cp %(builddir)s/petsc-%(version)s.0/src/mat/impls/aij/mpi/mpiaij.h %(installdir)s/include/petsc/private/', diff --git a/Golden_Repo/p/PLUMED/PLUMED-2.7.0-gpsmpi-2020.eb b/Golden_Repo/p/PLUMED/PLUMED-2.7.0-gpsmpi-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..bcc374e01dc40cf599a9ac9db1b1b36effa9a958 --- /dev/null +++ b/Golden_Repo/p/PLUMED/PLUMED-2.7.0-gpsmpi-2020.eb @@ -0,0 +1,46 @@ +# Built with EasyBuild version 4.3.1 on 2021-01-09_13-02-25 +# by Ward Poelmans <wpoely86@gmail.com> + +easyblock = 'ConfigureMake' + +name = 'PLUMED' +version = '2.7.0' + +homepage = 'http://www.plumed.org' +description = """PLUMED is an open source library for free energy calculations in molecular systems +which works together with some of the most popular molecular dynamics engines. Free energy +calculations can be performed as a function of many order parameters with a particular focus on +biological problems, using state of the art methods such as metadynamics, umbrella sampling and +Jarzynski-equation based steered MD. The software, written in C++, can be easily interfaced with +both Fortran and C/C++ codes. +""" + +site_contacts = 'sc@fz-juelich.de' + +toolchain = {'name': 'gpsmpi', 'version': '2020'} +toolchainopts = {'usempi': 'True'} + +source_urls = ['https://github.com/plumed/plumed2/archive/'] +sources = ['v%(version)s.tar.gz'] + +dependencies = [ + ('zlib', '1.2.11'), + ('GSL', '2.6'), + ('libmatheval', '1.1.11'), +] + +preconfigopts = 'env FC=$MPIF90 LIBS="$LIBLAPACK $LIBS" ' +configopts = ' --exec-prefix=%(installdir)s --enable-gsl --enable-modules=all' +prebuildopts = 'source sourceme.sh && ' + +sanity_check_paths = { + 'files': ['bin/plumed', 'lib/libplumedKernel.%s' % SHLIB_EXT, 'lib/libplumed.%s' % SHLIB_EXT], + 'dirs': ['lib/plumed'] +} + +modextrapaths = { + 'PLUMED_KERNEL': 'lib/libplumedKernel.%s' % SHLIB_EXT, + 'PLUMED_ROOT': 'lib/plumed', +} + +moduleclass = 'chem' diff --git a/Golden_Repo/p/ParaView/ParaView-5.8.1-EGL-gpsmkl-2020-Python-3.8.5.eb b/Golden_Repo/p/ParaView/ParaView-5.8.1-EGL-gpsmkl-2020-Python-3.8.5.eb index 8341237f04adef6034d8bc1c6b8f5c83f073af1a..ba726fd4171c4d3041f3103f0cd66aa37a9fb3ed 100644 --- a/Golden_Repo/p/ParaView/ParaView-5.8.1-EGL-gpsmkl-2020-Python-3.8.5.eb +++ b/Golden_Repo/p/ParaView/ParaView-5.8.1-EGL-gpsmkl-2020-Python-3.8.5.eb @@ -34,6 +34,7 @@ patches = [ builddependencies = [ ('CMake', '3.18.0'), + ('git', '2.28.0'), ] dependencies = [ @@ -56,6 +57,7 @@ dependencies = [ ('netCDF-C++4', '4.3.1'), ('netCDF-Fortran', '4.5.3'), ('mpi4py', '3.0.3', '-Python-%(pyver)s'), + ('nlohmann-json', '3.9.1'), # for ParFlow plugin # ('VTK', '8.2.0', '-Python-%(pyver)s', ('gcccoremkl', '8.3.0-2019.3.199')), # ('VTKm','1.1.0','-AVX2'), ('Qt5', '5.14.2'), @@ -67,6 +69,10 @@ dependencies = [ separate_build_dir = True # parallel = 24 +# ensure we do not use a too advanced GL-version at config/build-time, which might not be available at run-time +preconfigopts = "export __EGL_VENDOR_LIBRARY_FILENAMES=${EBROOTOPENGL}/share/glvnd/egl_vendor.d/50_mesa.json && " +prebuildopts = "export __EGL_VENDOR_LIBRARY_FILENAMES=${EBROOTOPENGL}/share/glvnd/egl_vendor.d/50_mesa.json && " + ######################################################################################## # check ParaView Superbuild options # # https://gitlab.kitware.com/paraview/paraview-superbuild/tree/master # @@ -228,8 +234,7 @@ configopts += '-DModule_vtkFiltersSelection=ON ' configopts += '-DModule_vtkFiltersTopology=ON ' # --- coupling --- # -configopts += '-DPARAVIEW_USE_VISITBRIDGE=ON ' -configopts += '-DPARAVIEW_ENABLE_CATALYST=ON ' +# configopts += '-DPARAVIEW_ENABLE_CATALYST=ON ' # variable is obsolete and no longer has any effect # --- development & testing --- # configopts += '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON ' @@ -261,7 +266,14 @@ configopts += '-DNETCDF_CXX_ROOT=$EBROOTNETCDFMINCPLUSPLUS ' configopts += '-DNETCDF_F77_ROOT=$EBROOTNETCDFMINFORTRAN ' configopts += '-DNETCDF_F90_ROOT=$EBROOTNETCDFMINFORTRAN ' -# --- ParaView Plugins --- # +# --- ParaView Extra-Reader --- # +configopts += '-DPARAVIEW_PLUGIN_ENABLE_ParFlow=ON ' + +configopts += '-DPARAVIEW_ENABLE_VISITBRIDGE=ON ' +configopts += '-DVISIT_BUILD_READER_Nek5000=ON ' +# configopts += '-DVISIT_BUILD_READER_Boxlib3D=ON ' # req. external dependency +# configopts += '-DVISIT_BUILD_READER_Mili=ON ' # req. external dependency +# configopts += '-DVISIT_BUILD_READER_Silo=ON ' # req. external dependency # --- ParaView Plugin Autoload --- # # configopts += '-DPARAVIEW_AUTOLOAD_PLUGIN_AnalyzeNIfTIIO=ON ' @@ -321,9 +333,9 @@ postinstallcmds = ['python -m compileall %(installdir)s/lib64/python3.6/site-pac modextravars = {'CUDA_VISIBLE_DEVICES': '0,1'} -# OpenSWR fully supports OpenGL 3.0 and most of 3.3, but ParaView requires 3.2 -> clame to fully support 3.2 -modextravars = {'MESA_GL_VERSION_OVERRIDE': '3.2'} -# modextravars = {'MESA_GLSL_VERSION_OVERRIDE': '??'} +# OpenSWR fully supports OpenGL 3.0 and most of 3.3, but ParaView requires 3.3 -> clame to fully support 3.3 +modextravars = {'MESA_GL_VERSION_OVERRIDE': '3.3'} +modextravars = {'MESA_GLSL_VERSION_OVERRIDE': '330'} modextravars = { # OpenMP will choose an optimum number of threads by default, which is usually the number of cores diff --git a/Golden_Repo/p/ParaView/ParaView-5.8.1-gpsmkl-2020-Python-3.8.5.eb b/Golden_Repo/p/ParaView/ParaView-5.8.1-gpsmkl-2020-Python-3.8.5.eb index 378ba622d637c755656b341054645af283876380..ee76609fb6a4922bf545a5327d72f0b8244e8abc 100644 --- a/Golden_Repo/p/ParaView/ParaView-5.8.1-gpsmkl-2020-Python-3.8.5.eb +++ b/Golden_Repo/p/ParaView/ParaView-5.8.1-gpsmkl-2020-Python-3.8.5.eb @@ -34,6 +34,7 @@ patches = [ builddependencies = [ ('CMake', '3.18.0'), + ('git', '2.28.0'), ] dependencies = [ @@ -56,6 +57,7 @@ dependencies = [ ('netCDF-C++4', '4.3.1'), ('netCDF-Fortran', '4.5.3'), ('mpi4py', '3.0.3', '-Python-%(pyver)s'), + ('nlohmann-json', '3.9.1'), # for ParFlow plugin # ('VTK', '8.2.0', '-Python-%(pyver)s', ('gcccoremkl', '8.3.0-2019.3.199')), # ('VTKm','1.1.0','-AVX2'), ('Qt5', '5.14.2'), @@ -228,8 +230,7 @@ configopts += '-DModule_vtkFiltersSelection=ON ' configopts += '-DModule_vtkFiltersTopology=ON ' # --- coupling --- # -configopts += '-DPARAVIEW_USE_VISITBRIDGE=ON ' -configopts += '-DPARAVIEW_ENABLE_CATALYST=ON ' +# configopts += '-DPARAVIEW_ENABLE_CATALYST=ON ' # variable is obsolete and no longer has any effect # --- development & testing --- # configopts += '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON ' @@ -261,7 +262,15 @@ configopts += '-DNETCDF_CXX_ROOT=$EBROOTNETCDFMINCPLUSPLUS ' configopts += '-DNETCDF_F77_ROOT=$EBROOTNETCDFMINFORTRAN ' configopts += '-DNETCDF_F90_ROOT=$EBROOTNETCDFMINFORTRAN ' -# --- ParaView Plugins --- # +# --- ParaView Extra-Reader --- # +configopts += '-DPARAVIEW_PLUGIN_ENABLE_ParFlow=ON ' + +# https://gitlab.kitware.com/paraview/visitbridge/-/blob/master/databases/CMakeLists.txt +configopts += '-DPARAVIEW_ENABLE_VISITBRIDGE=ON ' +configopts += '-DVISIT_BUILD_READER_Nek5000=ON ' +# configopts += '-DVISIT_BUILD_READER_Boxlib3D=ON ' # req. external dependency +# configopts += '-DVISIT_BUILD_READER_Mili=ON ' # req. external dependency +# configopts += '-DVISIT_BUILD_READER_Silo=ON ' # req. external dependency # --- ParaView Plugin Autoload --- # # configopts += '-DPARAVIEW_AUTOLOAD_PLUGIN_AnalyzeNIfTIIO=ON ' @@ -321,9 +330,9 @@ postinstallcmds = ['python -m compileall %(installdir)s/lib64/python3.6/site-pac modextravars = {'CUDA_VISIBLE_DEVICES': '0,1'} -# OpenSWR fully supports OpenGL 3.0 and most of 3.3, but ParaView requires 3.2 -> clame to fully support 3.2 -modextravars = {'MESA_GL_VERSION_OVERRIDE': '3.2'} -# modextravars = {'MESA_GLSL_VERSION_OVERRIDE': '??'} +# OpenSWR fully supports OpenGL 3.0 and most of 3.3, but ParaView requires 3.3 -> clame to fully support 3.3 +modextravars = {'MESA_GL_VERSION_OVERRIDE': '3.3'} +modextravars = {'MESA_GLSL_VERSION_OVERRIDE': '330'} modextravars = { # OpenMP will choose an optimum number of threads by default, which is usually the number of cores diff --git a/Golden_Repo/p/PyCUDA/PyCUDA-2020.1-GCCcore-9.3.0.Python-3.8.5.eb b/Golden_Repo/p/PyCUDA/PyCUDA-2020.1-GCCcore-9.3.0.Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..bc5baf32c7650dcc907b88f9c5491049de33438b --- /dev/null +++ b/Golden_Repo/p/PyCUDA/PyCUDA-2020.1-GCCcore-9.3.0.Python-3.8.5.eb @@ -0,0 +1,52 @@ +easyblock = 'PythonBundle' + +name = 'PyCUDA' +version = '2020.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://pypi.python.org/pypi/pycuda/' +description = """ +PyCUDA lets you access Nvidia‘s CUDA parallel computation API from Python. +""" + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [PYPI_LOWER_SOURCE] + +builddependencies = [ + ('binutils', '2.34') +] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('Boost.Python', '1.74.0', '-nompi'), + ('CUDA', '11.0', '', SYSTEM), +] + +local_prebuildopts = "./configure.py --cuda-root=$EBROOTCUDA --boost-inc-dir=$EBROOTBOOST/include/boost/ " +local_prebuildopts += "--boost-lib-dir=$EBROOTBOOST/lib/ --no-use-shipped-boost " +local_prebuildopts += "--boost-python-libname=boost_python38 && " + +use_pip = True +sanity_pip_check = True + +exts_default_options = { + 'source_urls': [PYPI_LOWER_SOURCE], + 'source_tmpl': SOURCELOWER_TAR_GZ, +} + +exts_list = [ + ('pytools', '2020.4.4', { + 'checksums': ['3645ed839cf4d79cb4bf030f37ddaeecd7fe5e2d6698438cc36c24a1d5168809'], + }), + (name, version, { + 'prebuildopts': local_prebuildopts, + 'use_pip': False, + 'checksums': ['effa3b99b55af67f3afba9b0d1b64b4a0add4dd6a33bdd6786df1aa4cc8761a5'], + }), +] + +moduleclass = 'lang' diff --git a/Golden_Repo/p/PyQuil/PyQuil-2.27.0-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb b/Golden_Repo/p/PyQuil/PyQuil-2.27.0-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..1a850b9db0b4a67057f3f13c71afdee1b83053c7 --- /dev/null +++ b/Golden_Repo/p/PyQuil/PyQuil-2.27.0-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb @@ -0,0 +1,94 @@ +easyblock = 'PythonBundle' + +name = 'PyQuil' +version = '2.27.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/quantumlib/cirq' +description = """PyQuil is a library for generating and executing Quil programs on the Rigetti Forest platform.""" + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} +toolchainopts = {'pic': True} + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', '-Python-%(pyver)s'), +] + +local_common_opts = { + 'req_py_majver': '3', + 'req_py_minver': '0' +} + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'use_pip_for_deps': False, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + # testing + ('typing_extensions', '3.7.4.3', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '99d4073b617d30288f569d3f13d2bd7548c3a7e4c8de87db09a9d29bb3a4a60c')]), + ])), + ('typed_ast', '1.4.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '9fc0b3cb5d1720e7141d103cf4819aea239f7d136acf9ee4a69b047b7986175a')]), + ])), + ('mypy_extensions', '0.4.3', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8')]), + ])), + ('mypy', '0.790', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '2b21ba45ad9ef2e2eb88ce4aeadd0112d0f5026418324176fd494a6824b74975')]), + ])), + ('requests-mock', '1.8.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'e68f46844e4cee9d447150343c9ae875f99fa8037c6dcf5f15bf1fe9ab43d226')]), + ])), + ('pytest-cov', '2.10.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '47bd0ce14056fdd79f93e1713f88fad7bdcc583dcd7783da86ef2f085a0bb88e')]), + ])), + ('pytest-timeout', '1.4.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '20b3113cf6e4e80ce2d403b6fb56e9e1b871b510259206d40ff8d609f48bda76')]), + ])), + ('pytest-asyncio', '0.14.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '9882c0c6b24429449f5f969a5158b528f39bde47dc32e85b9f0403965017e700')]), + ])), + ('pytest-rerunfailures', '9.1.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '1cb11a17fc121b3918414eb5eaf314ee325f2e693ac7cb3f6abf7560790827f2')]), + ])), + # pyquil application + ('python-rapidjson', '0.9.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'ad80bd7e4bb15d9705227630037a433e2e2a7982b54b51de2ebabdd1611394a1')]), + ('modulename', 'rapidjson'), + ])), + ('ruamel.yaml', '0.16.5', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '412a6f5cfdc0525dee6a27c08f5415c7fd832a7afcb7a0ed7319628aed23d408')]), + ])), + ('ruamel.yaml.clib', '0.1.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'cee86ecc893a6a8ecaa7c6a9c2d06f75f614176210d78a5f155f8e78d6989509')]), + ('modulename', 'ruamel.yaml'), # fake to make sanitycheck shut-up + ])), + ('rpcq', '3.7.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'd4695048f874aa255764336fa1965f6fc1ea001a31e28681bbbef708cac531e1')]), + ])), + ('antlr4-python3-runtime', '4.7.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '168cdcec8fb9152e84a87ca6fd261b3d54c8f6358f42ab3b813b14a7193bb50b')]), + ('modulename', 'antlr4'), + ])), + ('lark', '0.11.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'f2c6ed79ae128a89714bbaa4a6ecb61b6eec84d1b5d63b9195ad461762f96298')]), + ])), + ('pyquil', version, dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '9082bbb58d1c104303d5e3890c81063f802edb5570c47d9f0176ae9df06f4081')]), + ])), + # addon + ('contextvars', '2.3', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '2341042e1c03a271813e07dba29b6b60fa85c1005ea5ed1638a076cf50b4d625')]), + ])), + ('immutables', '0.6', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '63023fa0cceedc62e0d1535cd4ca7a1f6df3120a6d8e5c34e89037402a6fd809')]), + ])), +] + +moduleclass = 'quantum' diff --git a/Golden_Repo/p/PySCF/PySCF-1.7.1-GCC-9.3.0-Python-3.8.5.eb b/Golden_Repo/p/PySCF/PySCF-1.7.1-GCC-9.3.0-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..545f9160eece8aeea351aa96833c01fe7476fe12 --- /dev/null +++ b/Golden_Repo/p/PySCF/PySCF-1.7.1-GCC-9.3.0-Python-3.8.5.eb @@ -0,0 +1,51 @@ +easyblock = 'CMakeMakeCp' + +name = 'PySCF' +version = '1.7.1' # last version which requires libxc<5 +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://www.pyscf.org' +description = "PySCF is an open-source collection of electronic structure modules powered by Python." + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'GCC', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/pyscf/pyscf/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['23ccf6d8bb6a15fe7035e04e6ab00783a069bf38556873c71a6fb672b6159636'] + +builddependencies = [ + ('CMake', '3.18.0') +] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('h5py', '2.10.0', '-serial' + versionsuffix), + ('qcint', '3.0.19', '', ('gcccoremkl', '9.3.0-2020.2.254')), + ('libxc', '4.3.4'), # no gcccore*-version available - only in toolchain GCC + ('XCFun', '20190127', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), +] + +start_dir = 'pyscf/lib' + +separate_build_dir = True + +configopts = "-DBUILD_LIBCINT=OFF -DBUILD_LIBXC=OFF -DBUILD_XCFUN=OFF" + +prebuildopts = "export PYSCF_INC_DIR=$EBROOTQCINT/include:$EBROOTLIBXC/lib && " + +files_to_copy = ['pyscf'] + +sanity_check_paths = { + 'files': ['pyscf/__init__.py'], + 'dirs': ['pyscf/data', 'pyscf/lib'], +} + +sanity_check_commands = ["python -c 'import pyscf'"] + +modextrapaths = {'PYTHONPATH': ''} + +moduleclass = 'chem' diff --git a/Golden_Repo/p/Python/Python-3.8.5-GCCcore-9.3.0.eb b/Golden_Repo/p/Python/Python-3.8.5-GCCcore-9.3.0.eb index 887e2ca8917ecf95bdc0ddee9bf0c39736089596..dc57e8d9b9b957121986e18d05a1b9d8352669f5 100644 --- a/Golden_Repo/p/Python/Python-3.8.5-GCCcore-9.3.0.eb +++ b/Golden_Repo/p/Python/Python-3.8.5-GCCcore-9.3.0.eb @@ -91,9 +91,6 @@ exts_list = [ 'paycheck-1.0.2_setup-open-README-utf8.patch', ], }), - ('argparse', '1.4.0', { - 'source_urls': ['https://pypi.python.org/packages/source/a/argparse/'], - }), ('pbr', '5.4.5', { 'source_urls': ['https://pypi.python.org/packages/source/p/pbr/'], }), @@ -442,6 +439,19 @@ exts_list = [ ('hypothesis', '4.44.2', { 'source_urls': ['https://pypi.python.org/packages/source/h/hypothesis/'], }), + ('coverage', '5.1', { + 'source_urls': ['https://pypi.python.org/packages/source/c/coverage/'], + 'checksums': [('sha256', 'f90bfc4ad18450c80b024036eaf91e4a246ae287701aaa88eaebebf150868052')], + }), + ('msgpack', '0.6.2', { + 'source_urls': ['https://pypi.python.org/packages/source/m/msgpack/'], + 'checksums': [('sha256', 'ea3c2f859346fcd55fc46e96885301d9c2f7a36d453f5d8f2967840efa1e1830')], + }), + ('pyzmq', '18.1.0', { + 'modulename': 'zmq', + 'source_urls': ['https://pypi.python.org/packages/source/p/pyzmq/'], + 'checksums': [('sha256', '93f44739db69234c013a16990e43db1aa0af3cf5a4b8b377d028ff24515fbeb3')], + }), ] local_grako_egginfo_path = '%(installdir)s/lib/python3.8/site-packages/' diff --git a/Golden_Repo/p/parallel-netcdf/parallel-netcdf-1.12.1-ipsmpi-2020-mt.eb b/Golden_Repo/p/parallel-netcdf/parallel-netcdf-1.12.1-ipsmpi-2020-mt.eb new file mode 100644 index 0000000000000000000000000000000000000000..8d70a88ed8a72f0be41151ecf08955beb082f066 --- /dev/null +++ b/Golden_Repo/p/parallel-netcdf/parallel-netcdf-1.12.1-ipsmpi-2020-mt.eb @@ -0,0 +1,34 @@ +easyblock = 'ConfigureMake' + +name = 'parallel-netcdf' +version = '1.12.1' + +homepage = 'http://trac.mcs.anl.gov/projects/parallel-netcdf' +description = """PnetCDF is a library providing high-performance parallel I/O while still maintaining file-format +compatibility with Unidata's NetCDF, specifically the formats of CDF-1 and CDF-2. + +Although NetCDF supports parallel I/O starting from version 4, the files must be in HDF5 format. PnetCDF is currently +the only choice for carrying out parallel I/O on files that are in classic formats +""" + +site_contacts = 's.luehrs@fz-juelich.de' + +toolchain = {'name': 'ipsmpi', 'version': '2020-mt'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['https://parallel-netcdf.github.io/Release/'] +sources = ['pnetcdf-%(version)s.tar.gz'] +checksums = ['56f5afaa0ddc256791c405719b6436a83b92dcd5be37fe860dea103aee8250a2'] + +configopts = '--enable-shared' + +builddependencies = [ + ('M4', '1.4.18'), +] + +sanity_check_paths = { + 'files': ['include/pnetcdf.h', 'include/pnetcdf.inc', 'include/pnetcdf.mod', 'lib/libpnetcdf.a'], + 'dirs': [], +} + +moduleclass = 'data' diff --git a/Golden_Repo/p/petsc4py/petsc4py-3.13.0-gpsmkl-2020-Python-3.8.5.eb b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-gpsmkl-2020-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..26e81b6aba0dfd5cf1e81c87516d0561069a4515 --- /dev/null +++ b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-gpsmkl-2020-Python-3.8.5.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.13.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'gpsmkl', 'version': '2020'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('PETSc', '3.14'), +] + +download_dep_fail = True + +req_py_majver = 3 +req_py_minver = 0 + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/petsc4py/petsc4py-3.13.0-gpsmkl-2020-complex-Python-3.8.5.eb b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-gpsmkl-2020-complex-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..7da6e1763cd413c40d151fc2db3c63dec6610ae1 --- /dev/null +++ b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-gpsmkl-2020-complex-Python-3.8.5.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.13.0' +local_pysuffix = '-Python-%(pyver)s' +versionsuffix = '-complex%s' % local_pysuffix + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'gpsmkl', 'version': '2020'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', local_pysuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('PETSc', '3.14', '-complex'), +] + +download_dep_fail = True + +req_py_majver = 3 +req_py_minver = 0 + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/petsc4py/petsc4py-3.13.0-gpsmkl-2020-int8-Python-3.8.5.eb b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-gpsmkl-2020-int8-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..dd85b79d19d2c7034e91dccfebdf1e99c36e7567 --- /dev/null +++ b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-gpsmkl-2020-int8-Python-3.8.5.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.13.0' +local_pysuffix = '-Python-%(pyver)s' +versionsuffix = '-int8%s' % local_pysuffix + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'gpsmkl', 'version': '2020'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', local_pysuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('PETSc', '3.14', '-int8'), +] + +download_dep_fail = True + +req_py_majver = 3 +req_py_minver = 0 + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-2020-Python-3.8.5.eb b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-2020-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..5fea091afe6ee5b1b41624b0c76ee2535900e4f8 --- /dev/null +++ b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-2020-Python-3.8.5.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.13.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'intel', 'version': '2020'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('PETSc', '3.14'), +] + +download_dep_fail = True + +prebuildopts = 'export LDSHARED="-shared" && ' + +req_py_majver = 3 +req_py_minver = 0 + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-2020-complex-Python-3.8.5.eb b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-2020-complex-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..41cba2130dedc7763db20baf38bff36995fe5165 --- /dev/null +++ b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-2020-complex-Python-3.8.5.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.13.0' +local_pysuffix = '-Python-%(pyver)s' +versionsuffix = '-complex%s' % local_pysuffix + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'intel', 'version': '2020'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', local_pysuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('PETSc', '3.14', '-complex'), +] + +download_dep_fail = True + +prebuildopts = 'export LDSHARED="-shared" && ' + +req_py_majver = 3 +req_py_minver = 0 + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-2020-int8-Python-3.8.5.eb b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-2020-int8-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..d51b817291e1d542e08ab0d116d5731067c60904 --- /dev/null +++ b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-2020-int8-Python-3.8.5.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.13.0' +local_pysuffix = '-Python-%(pyver)s' +versionsuffix = '-int8%s' % local_pysuffix + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'intel', 'version': '2020'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', local_pysuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('PETSc', '3.14', '-int8'), +] + +download_dep_fail = True + +prebuildopts = 'export LDSHARED="-shared" && ' + +req_py_majver = 3 +req_py_minver = 0 + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-para-2020-Python-3.8.5.eb b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-para-2020-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..5e0d44859d605291c2f7b1e8940e37e3497ec9a8 --- /dev/null +++ b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-para-2020-Python-3.8.5.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.13.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'intel-para', 'version': '2020'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('PETSc', '3.14'), +] + +download_dep_fail = True + +prebuildopts = 'export LDSHARED="-shared" && ' + +req_py_majver = 3 +req_py_minver = 0 + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-para-2020-complex-Python-3.8.5.eb b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-para-2020-complex-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..3380115332843bffc48fe7331ac41f3503599f84 --- /dev/null +++ b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-para-2020-complex-Python-3.8.5.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.13.0' +local_pysuffix = '-Python-%(pyver)s' +versionsuffix = '-complex%s' % local_pysuffix + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'intel-para', 'version': '2020'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', local_pysuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('PETSc', '3.14', '-complex'), +] + +download_dep_fail = True + +prebuildopts = 'export LDSHARED="-shared" && ' + +req_py_majver = 3 +req_py_minver = 0 + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-para-2020-int8-Python-3.8.5.eb b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-para-2020-int8-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..f6f9fb27ea07c62f26f921d238a29bbd8ead000a --- /dev/null +++ b/Golden_Repo/p/petsc4py/petsc4py-3.13.0-intel-para-2020-int8-Python-3.8.5.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'petsc4py' +version = '3.13.0' +local_pysuffix = '-Python-%(pyver)s' +versionsuffix = '-int8%s' % local_pysuffix + +homepage = 'https://bitbucket.org/petsc/petsc4py' +description = "petsc4py are Python bindings for PETSc, the Portable, Extensible Toolchain for Scientific Computation." + +toolchain = {'name': 'intel-para', 'version': '2020'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', local_pysuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('PETSc', '3.14', '-int8'), +] + +download_dep_fail = True + +prebuildopts = 'export LDSHARED="-shared" && ' + +req_py_majver = 3 +req_py_minver = 0 + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/protobuf/protobuf-3.12.4-GCCcore-9.3.0.eb b/Golden_Repo/p/protobuf/protobuf-3.12.4-GCCcore-9.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..10036260ba2e005739d3ab34f3e60346f90d0047 --- /dev/null +++ b/Golden_Repo/p/protobuf/protobuf-3.12.4-GCCcore-9.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'CMakeMake' + +name = 'protobuf' +version = '3.12.4' + +homepage = 'https://github.com/google/protobuf/' +description = """Google Protocol Buffers""" + +site_contacts = 'a.strube@fz-juelich.de' + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://github.com/google/protobuf/archive/v%(version)s/'] +sources = ['%(name)s-%(version)s_jsc.tar.gz'] +checksums = ['512e5a674bf31f8b7928a64d8adf73ee67b8fe88339ad29adaa3b84dbaa570d8'] + +# This tarball contains gmock and gtest, which are otherwise downloaded by autogen.sh +builddependencies = [ + ('binutils', '2.34'), + ('CMake', '3.18.0'), +] + +dependencies = [ + ('zlib', '1.2.11'), +] + +start_dir = 'cmake' + +configopts = '-Dprotobuf_BUILD_TESTS=OFF -DBUILD_SHARED_LIBS=ON' + +sanity_check_paths = { + 'files': ['bin/protoc', 'lib64/libprotobuf.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/Golden_Repo/p/pscom/pscom-5.4.6-1.eb b/Golden_Repo/p/pscom/pscom-5.4.6-1.eb new file mode 100644 index 0000000000000000000000000000000000000000..a0a61bfda8223ba64e84cc94be72c7a7d67ee37d --- /dev/null +++ b/Golden_Repo/p/pscom/pscom-5.4.6-1.eb @@ -0,0 +1,47 @@ +easyblock = 'ConfigureMake' + +name = 'pscom' +version = "5.4.6-1" +homepage = 'http://www.par-tec.com' +description = """ParaStation is a robust and efficient cluster middleware, consisting of a high-performance +communication layer (MPI) and a sophisticated management layer. +""" + +site_contacts = 'Damian Alvarez <d.alvarez@fz-juelich.de>' + +toolchain = SYSTEM + +source_urls = ['https://github.com/ParaStation/%(name)s/archive/'] +sources = ['%s.tar.gz' % version] + +builddependencies = [ + # Fails with binutils 2.34 + ('binutils', '2.32'), + ('popt', '1.16'), + ('CUDA', '11.0'), +] + +dependencies = [ + ('UCX', '1.8.1'), +] + +preconfigopts = 'export UCP_LDFLAGS="-L$EBROOTUCX/lib" && ' +preconfigopts += 'export CUDA_LDFLAGS="-L$EBROOTNVIDIA/lib64" &&' + +configopts = '--enable-cuda --enable-ucp' + +sanity_check_paths = { + 'files': [ + 'include/%(name)s.h', + ('lib/libpscom.so', 'lib64/libpscom.so'), + ('lib/libpscom4ucp.so', 'lib64/libpscom4ucp.so'), + ('lib/libpscom4openib.so', 'lib64/libpscom4openib.so'), + ], + 'dirs': [], +} + +modextravars = { + 'PSCOMVERSION': '%s' % version, +} + +moduleclass = 'tools' diff --git a/Golden_Repo/p/pscom/pscom-5.4.7-1.eb b/Golden_Repo/p/pscom/pscom-5.4.7-1.eb new file mode 100644 index 0000000000000000000000000000000000000000..05b339ecce26accee7c60c30b0d1c73c588c5299 --- /dev/null +++ b/Golden_Repo/p/pscom/pscom-5.4.7-1.eb @@ -0,0 +1,48 @@ +easyblock = 'CMakeMake' + +name = 'pscom' +version = "5.4.7-1" +homepage = 'http://www.par-tec.com' +description = """ParaStation is a robust and efficient cluster middleware, consisting of a high-performance +communication layer (MPI) and a sophisticated management layer. +""" + +site_contacts = 'Damian Alvarez <d.alvarez@fz-juelich.de>' + +toolchain = SYSTEM + +source_urls = ['https://github.com/ParaStation/%(name)s/archive/'] +sources = ['%%(name)s-%s.tar.bz2' % version] + +builddependencies = [ + ('popt', '1.16'), + ('CUDA', '11.0'), + ('CMake', '3.18.0'), +] + +dependencies = [ + ('UCX', '1.9.0'), +] + +build_type = 'RelWithDebInfo' + +preconfigopts = 'export UCP_LDFLAGS="-L$EBROOTUCX/lib" && ' +preconfigopts += 'export CUDA_LDFLAGS="-L$EBROOTNVIDIA/lib64" &&' + +configopts = '-DCUDA_ENABLED=ON' + +sanity_check_paths = { + 'files': [ + 'include/%(name)s.h', + ('lib/libpscom.so', 'lib64/libpscom.so'), + ('lib/libpscom4ucp.so', 'lib64/libpscom4ucp.so'), + ('lib/libpscom4openib.so', 'lib64/libpscom4openib.so'), + ], + 'dirs': [], +} + +modextravars = { + 'PSCOMVERSION': '%s' % version, +} + +moduleclass = 'tools' diff --git a/Golden_Repo/q/Qiskit/Qiskit-0.23.2-gpsmkl-2020-Python-3.8.5.eb b/Golden_Repo/q/Qiskit/Qiskit-0.23.2-gpsmkl-2020-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..63a6c00b663a0e36af60a5d7cceae825b305f74c --- /dev/null +++ b/Golden_Repo/q/Qiskit/Qiskit-0.23.2-gpsmkl-2020-Python-3.8.5.eb @@ -0,0 +1,147 @@ +easyblock = 'PythonBundle' + +name = 'Qiskit' +version = '0.23.2' +versionsuffix = '-Python-%(pyver)s' +local_aerver = '0.7.0' # version of qiskit-aer + +homepage = 'https://qiskit.org' +description = """Qiskit is an open-source framework for working with noisy quantum computers + at the level of pulses, circuits, and algorithms.""" + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'gpsmkl', 'version': '2020'} +toolchainopts = {'pic': True} + +builddependencies = [ + ('binutils', '2.34'), + ('CMake', '3.18.0'), + ('Ninja', '1.10.0'), + ('pkg-config', '0.29.2'), + ('Rust', '1.47.0'), +] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('scikit', '2020', versionsuffix, ('gcccoremkl', '9.3.0-2020.2.254')), + ('CVXOPT', '1.2.5', versionsuffix), + ('h5py', '2.10.0', '-serial' + versionsuffix), + ('PySCF', '1.7.1', versionsuffix), +] + +local_common_opts = { + 'req_py_majver': '3', + 'req_py_minver': '0' +} + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'sanity_pip_check': False, # DISABLED: because 'pip check' does not find pyscf (not installed with pip) + 'download_dep_fail': True, + 'use_pip_for_deps': False, +} + +exts_list = [ + ('python_constraint', '1.4.0', dict(list(local_common_opts.items()) + [ + ('source_tmpl', 'python-constraint-%(version)s.tar.bz2'), + ('checksums', [('sha256', '501d6f17afe0032dfc6ea6c0f8acc12e44f992733f00e8538961031ef27ccb8e')]), + ('modulename', 'constraint'), + ])), + ('dill', '0.3.1.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '42d8ef819367516592a825746a18073ced42ca169ab1f5f4044134703e7a049c')]), + ])), + ('arrow', '0.15.5', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '5390e464e2c5f76971b60ffa7ee29c598c7501a294bc9f5e6dadcb251a5d027b')]), + ])), + ('marshmallow', '2.20.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'a339159e422a055269f5625df51fbdc7fb20512cfffa08451cd5727783ddca39')]), + ])), + ('marshmallow-polyfield', '3.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '72980cb9a43a7c750580b4b08e9d01a8cbd583e1f59360f1924a1ed60f065a4c')]), + ])), + ('pylatexenc', '1.5', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'ef2d5260c38e2cb4d2829e8b918914a558557820d4f57cb6588a81e827de2bb3')]), + ])), + ('qiskit-terra', '0.16.0', dict(list(local_common_opts.items()) + [ + ('patches', ['qiskit-terra-0.9.0_fix-qiskit-version-env.patch']), + ('checksums', [( + # qiskit-terra-0.16.0.tar.gz + ('sha256', 'd0cba3aa7531a316429275ac11f3380c19c2014b376e3f9bac93f7037c1b426b'), + # qiskit-terra-0.9.0_fix-qiskit-version-env.patch + ('sha256', 'a297f338a97f956513d849286087bab5508301e214054d07482efc90a5ab1b74'), + )]), + ('modulename', 'qiskit.qobj'), + ])), + ('retworkx', '0.7.2', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '3fcd08031b743766935e01696c01545a24d1ef16c854333ba835c96a66eb76a9')]), + ])), + ('fastjsonschema', '2.14.5', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'afbc235655f06356e46caa80190512e4d9222abfaca856041be5a74c665fa094')]), + ])), + ('qiskit-ignis', '0.5.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'fd7d704bd37481e2c9e627bc00531afbb3123c376229ab0c4f89a12f64984ad3')]), + ('modulename', 'qiskit.ignis'), + ])), + ('fastdtw', '0.3.4', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '2350fa6ec36bcad186eaf81f46eff35181baf04e324f522de8aeb43d0243f64f')]), + ])), + ('dlx', '1.0.4', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'ef75bc9d590216ebde7d4811f9ae6b2d6c6dc2a54772d94ae13384dc517a5aae')]), + ])), + ('docloud', '1.0.375', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '996d55407498fd01e6c6c480f367048f92255e9ca9db0e9ea19aaef91328a441')]), + ])), + ('docplex', '2.10.154', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '34a36ff25dd44b72cfe76e01dd0658eb7a451b0c3a52ef9f98e8e38fed83d537')]), + ])), + ('joblib', '0.14.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '0630eea4f5664c463f23fbf5dcfc54a2bc6168902719fa8e19daf033022786c8')]), + ])), + ('inflection', '0.3.1', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '18ea7fb7a7d152853386523def08736aa8c32636b047ade55f7578c4edeb16ca')]), + ])), + ('Quandl', '3.5.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'c3a9fc5ec1b585eeacd97531454e7795dde7a072c057f21335e5918cb905fc7e')]), + ])), + ('jsonschema', '2.6.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '6ff5f3180870836cae40f06fa10419f557208175f13ad7bc26caa77beb1f6e02')]), + ])), # part of Python module in version 3.0.1, but sanity check fails if package used from Python dependency + ('qiskit-aqua', '0.8.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('a235aa92f6c71b885591d22f34b43876a466c7af6e1918c260d2640f1c459c7b')]), + ('modulename', 'qiskit.aqua'), + ])), + ('websockets', '7.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '08e3c3e0535befa4f0c4443824496c03ecc25062debbcf895874f8a0b4c97c9f')]), + ])), + ('ntlm-auth', '1.4.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '350f2389c8ee5517f47db55a36ac2f8efc9742a60a678d6e2caa92385bdcaa9a')]), + ])), + ('requests_ntlm', '1.1.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '9189c92e8c61ae91402a64b972c4802b2457ce6a799d658256ebf084d5c7eb71')]), + ])), + ('nest-asyncio', '1.0.0', dict(list(local_common_opts.items()) + [ + ('source_tmpl', 'nest_asyncio-%(version)s.tar.gz'), + ('checksums', [('sha256', 'bd1cb7df2ea979e57d8ad02493ad85f9afbf1fcea3dfe34239da8c0dda98087e')]), + ])), + ('qiskit-ibmq-provider', '0.11.0', dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '429012832bdc6eac4a4acb4e9e55b37fba5213794b960d98c68508e6bb096623')]), + ('modulename', 'qiskit.providers.ibmq'), + ])), + ('qiskit-aer', local_aerver, dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', 'ed8d1836e16d2db8bcea8ce55a836705e2eeb05dd6d55f6c66a7641bcb95b49e')]), + ('modulename', 'qiskit.providers.aer'), + ])), + ('qiskit', version, dict(list(local_common_opts.items()) + [ + ('checksums', [('sha256', '1593b142d64c9cb3c158ec20f2721006a09af831abf218b348775a2684218254')]), + ])), +] + +postinstallcmds = [ + # qiskit/providers/aer/VERSION.txt does not get installed, but is required by qiskit/providers/aer/version.py + "echo %s > %%(installdir)s/lib/python%%(pyshortver)s/site-packages/qiskit/providers/aer/VERSION.txt" % local_aerver, +] + +moduleclass = 'quantum' diff --git a/Golden_Repo/q/Qiskit/qiskit-terra-0.9.0_fix-qiskit-version-env.patch b/Golden_Repo/q/Qiskit/qiskit-terra-0.9.0_fix-qiskit-version-env.patch new file mode 100644 index 0000000000000000000000000000000000000000..677563a70f8ed223cd9a5cef16c9ab3239d66395 --- /dev/null +++ b/Golden_Repo/q/Qiskit/qiskit-terra-0.9.0_fix-qiskit-version-env.patch @@ -0,0 +1,13 @@ +also include $LD_LIBRARY_PATH in environment where "python -m pip freeze" is run on 'import qiskit' +author: Kenneth Hoste (HPC-UGent) +--- qiskit-terra-0.9.0.orig/qiskit/version.py 2019-08-22 15:34:00.000000000 +0200 ++++ qiskit-terra-0.9.0/qiskit/version.py 2019-09-15 18:27:39.760817000 +0200 +@@ -28,7 +28,7 @@ + def _minimal_ext_cmd(cmd): + # construct minimal environment + env = {} +- for k in ['SYSTEMROOT', 'PATH']: ++ for k in ['SYSTEMROOT', 'PATH', 'LD_LIBRARY_PATH']: + v = os.environ.get(k) + if v is not None: + env[k] = v diff --git a/Golden_Repo/q/qcint/qcint-3.0.19-gcccoremkl-9.3.0-2020.2.254.eb b/Golden_Repo/q/qcint/qcint-3.0.19-gcccoremkl-9.3.0-2020.2.254.eb new file mode 100644 index 0000000000000000000000000000000000000000..5add7ac736284cb05330f9a981d98e1de974970e --- /dev/null +++ b/Golden_Repo/q/qcint/qcint-3.0.19-gcccoremkl-9.3.0-2020.2.254.eb @@ -0,0 +1,34 @@ +easyblock = 'CMakeMake' + +name = 'qcint' +version = '3.0.19' + +homepage = 'http://wiki.sunqm.net/libcint' +description = """libcint is an open source library for analytical Gaussian integrals. +qcint is an optimized libcint branch for the x86-64 platform.""" + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} +toolchainopts = {'optarch': False, 'noopt': True} # FIXME failing tests + +source_urls = ['https://github.com/sunqm/qcint/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['b46354becc284be4638d09e26b2002bf73a2be53c1653c6a6755bfb7778202e5'] + +builddependencies = [ + ('CMake', '3.18.0'), +] + +separate_build_dir = True + +configopts = "-DENABLE_EXAMPLE=0 -DENABLE_TEST=0" + +buildopts = "VERBOSE=1" + +sanity_check_paths = { + 'files': ['include/cint.h', 'lib/libcint.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-gompi-2020.eb b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-gompi-2020.eb index 3e0381e73e87961db4f17a478bec19b9c0962ad8..fc975a91d2c3ad3770d92d318f080cf961bb5cd6 100644 --- a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-gompi-2020.eb +++ b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-gompi-2020.eb @@ -8,6 +8,7 @@ description = 'I/O forwarding for SIONlib' site_contacts = 'Benedikt Steinbusch <b.steinbusch@fz-juelich.de>' toolchain = {'name': 'gompi', 'version': '2020'} +toolchainopts = {'pic': True} dependencies = [('Boost', '1.74.0')] diff --git a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-gpsmpi-2020.eb b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-gpsmpi-2020.eb index 3514bceacd43025d26137662d38e98617b3caeea..a457fe20ffee2f7cd10cde8804df3c415fba67e6 100644 --- a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-gpsmpi-2020.eb +++ b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-gpsmpi-2020.eb @@ -8,6 +8,7 @@ description = 'I/O forwarding for SIONlib' site_contacts = 'Benedikt Steinbusch <b.steinbusch@fz-juelich.de>' toolchain = {'name': 'gpsmpi', 'version': '2020'} +toolchainopts = {'pic': True} dependencies = [('Boost', '1.74.0')] diff --git a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-iimpi-2020.eb b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-iimpi-2020.eb index 5f53e28ba2d293b5372cb116beffe87625672e39..1c4d7f5f4c069bbe5335c5dcd3c14e51a1f30b0d 100644 --- a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-iimpi-2020.eb +++ b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-iimpi-2020.eb @@ -8,6 +8,7 @@ description = 'I/O forwarding for SIONlib' site_contacts = 'Benedikt Steinbusch <b.steinbusch@fz-juelich.de>' toolchain = {'name': 'iimpi', 'version': '2020'} +toolchainopts = {'pic': True} dependencies = [('Boost', '1.73.0')] diff --git a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-iompi-2020.eb b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-iompi-2020.eb index ce23055477c4b1617d5ee92d3675533757e1c588..6b2ebcd4c9b61bec2e2bdee56dd43b8153b5226b 100644 --- a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-iompi-2020.eb +++ b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-iompi-2020.eb @@ -8,6 +8,7 @@ description = 'I/O forwarding for SIONlib' site_contacts = 'Benedikt Steinbusch <b.steinbusch@fz-juelich.de>' toolchain = {'name': 'iompi', 'version': '2020'} +toolchainopts = {'pic': True} dependencies = [('Boost', '1.73.0')] diff --git a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-ipsmpi-2020.eb b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-ipsmpi-2020.eb index dcc3d4a1d3c1f5c2cd0ce098bb7ec06a517a76a4..b1ad7c1ae4478f251e6746c7117621d97fb87e22 100644 --- a/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-ipsmpi-2020.eb +++ b/Golden_Repo/s/SIONfwd/SIONfwd-1.0.0-ipsmpi-2020.eb @@ -8,6 +8,7 @@ description = 'I/O forwarding for SIONlib' site_contacts = 'Benedikt Steinbusch <b.steinbusch@fz-juelich.de>' toolchain = {'name': 'ipsmpi', 'version': '2020'} +toolchainopts = {'pic': True} dependencies = [('Boost', '1.73.0')] diff --git a/Golden_Repo/s/scikit/scikit-2020-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb b/Golden_Repo/s/scikit/scikit-2020-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb index 5f6e5ba9b5be130b5ce1f6866d37e7bbb97febda..b8d05baaac42b4d9466180d326fdcca01e6dd7e5 100644 --- a/Golden_Repo/s/scikit/scikit-2020-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb +++ b/Golden_Repo/s/scikit/scikit-2020-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb @@ -16,6 +16,7 @@ dependencies = [ ('Python', '3.8.5'), ('dask', '2.22.0', versionsuffix), ('SciPy-Stack', version, versionsuffix), + ('CMake', '3.18.0'), ] # this is a bundle of Python packages @@ -45,6 +46,15 @@ exts_list = [ 'source_urls': ['https://pypi.python.org/packages/source/s/scikit-image'], 'modulename': 'skimage', }), + ('distro', '1.5.0', { + 'source_urls': ['https://pypi.python.org/packages/source/d/distro'], + 'checksums': [('sha256', '0e58756ae38fbd8fc3020d54badb8eae17c5b9dcbed388b17bb55b8a5928df92')], + }), + ('scikit-build', '0.11.1', { + 'source_urls': ['https://pypi.python.org/packages/source/s/scikit-build'], + 'checksums': [('sha256', 'da40dfd69b2456fad1349a894b90180b43712152b8a85d2a00f4ae2ce8ac9a5c')], + 'modulename': 'skbuild', + }), ] sanity_check_paths = { diff --git a/Golden_Repo/t/torchvision/torchvision-0.8.1-gcccoremkl-9.3.0-2020.2.254-GPU-Python-3.8.5.eb b/Golden_Repo/t/torchvision/torchvision-0.8.1-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb similarity index 100% rename from Golden_Repo/t/torchvision/torchvision-0.8.1-gcccoremkl-9.3.0-2020.2.254-GPU-Python-3.8.5.eb rename to Golden_Repo/t/torchvision/torchvision-0.8.1-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb diff --git a/Golden_Repo/v/VMD/VMD-1.9.3_plugins.patch b/Golden_Repo/v/VMD/VMD-1.9.3_plugins.patch new file mode 100644 index 0000000000000000000000000000000000000000..f4cf63549263fd9462ccfefa556b6508369e9a25 --- /dev/null +++ b/Golden_Repo/v/VMD/VMD-1.9.3_plugins.patch @@ -0,0 +1,29 @@ +Fix hard coded compiler, flags and tcl lib version for plugins + +Ake Sandgren, 20190823 +--- plugins/Make-arch.orig 2016-10-21 23:34:39.000000000 +0200 ++++ plugins/Make-arch 2019-08-23 10:45:51.403545042 +0200 +@@ -337,17 +337,17 @@ + "ARCH = LINUXAMD64" \ + "COPTO = -fPIC -m64 -o " \ + "LOPTO = -fPIC -m64 -lstdc++ -o " \ +- "CC = gcc" \ +- "CXX = g++" \ ++ "CC = $(CC)" \ ++ "CXX = $(CXX)" \ + "DEF = -D" \ +- "CCFLAGS = -m64 -O2 -fPIC -Wall" \ +- "CXXFLAGS = -m64 -O2 -fPIC -Wall" \ +- "TCLLDFLAGS = -ltcl8.5 -ldl" \ ++ "CCFLAGS = $(CFLAGS)" \ ++ "CXXFLAGS = $(CXXFLAGS)" \ ++ "TCLLDFLAGS = $(TCLLDFLAGS)" \ + "NETCDFLDFLAGS = -lnetcdf " \ + "AR = ar" \ + "NM = nm -p" \ + "RANLIB = touch" \ +- "SHLD = gcc -shared" ++ "SHLD = $(CC) -shared" + + LINUXCARMA: + $(MAKE) dynlibs staticlibs bins \ diff --git a/Golden_Repo/v/VMD/VMD-1.9.3_stride_MAX_AT_IN_RES.patch b/Golden_Repo/v/VMD/VMD-1.9.3_stride_MAX_AT_IN_RES.patch new file mode 100644 index 0000000000000000000000000000000000000000..9011384eff52af2075f6d7977d0b0de7e5bad400 --- /dev/null +++ b/Golden_Repo/v/VMD/VMD-1.9.3_stride_MAX_AT_IN_RES.patch @@ -0,0 +1,15 @@ +Increase number of atoms allowed per residues as per stride README from VMD + +Åke Sandgren, 2017-05-02 +diff -ru vmd-1.9.3.orig/lib/stride/stride.h vmd-1.9.3/lib/stride/stride.h +--- vmd-1.9.3.orig/lib/stride/stride.h 2017-05-02 13:47:26.484463970 +0200 ++++ vmd-1.9.3/lib/stride/stride.h 2017-05-02 13:47:43.748279797 +0200 +@@ -40,7 +40,7 @@ + #define MAX_BOND 100 + #define MAX_ASSIGN 500 + #define MAX_INFO 1000 +-#define MAX_AT_IN_RES 75 ++#define MAX_AT_IN_RES 100 + #define MAX_AT_IN_HETERORES 200 + #define MAXRESDNR 6 + #define MAXRESACC 6 diff --git a/Golden_Repo/v/VMD/VMD-1.9.3_stride_Makefile.patch b/Golden_Repo/v/VMD/VMD-1.9.3_stride_Makefile.patch new file mode 100644 index 0000000000000000000000000000000000000000..036430db8ffe77867d6e4ebf20fc57e422ff95f3 --- /dev/null +++ b/Golden_Repo/v/VMD/VMD-1.9.3_stride_Makefile.patch @@ -0,0 +1,37 @@ +Make stride use CC, CFLAGS and LDFLAGS from EB. + +Åke Sandgren, 2017-05-02 +diff -ru vmd-1.9.3.orig/lib/stride/Makefile vmd-1.9.3/lib/stride/Makefile +--- vmd-1.9.3.orig/lib/stride/Makefile 2003-04-08 14:03:14.000000000 +0200 ++++ vmd-1.9.3/lib/stride/Makefile 2017-05-02 13:46:01.973365383 +0200 +@@ -1,13 +1,14 @@ + #FLAGS = -lm -L/usr/pub/lib -lefence -o + #CC = cc -O2 -fullwarn -TENV:large_GOT + #CC = cc -g -Wall +-CC = gcc -O2 # at least for SunOS ++#CC = gcc -O2 # at least for SunOS + #CC = cc -g + + #CC = cc -O2 -fullwarn + + #CC = cc -O2 +-FLAGS = -lm -o ++#FLAGS = -lm -o ++LIBS = -lm + + SOURCE = stride.c splitstr.c rdpdb.c initchn.c geometry.c thr2one.c one2thr.c filename.c tolostr.c strutil.c place_h.c hbenergy.c memory.c helix.c sheet.c rdmap.c phipsi.c command.c molscr.c die.c hydrbond.c mergepat.c fillasn.c escape.c p_jrnl.c p_rem.c p_atom.c p_helix.c p_sheet.c p_turn.c p_ssbond.c p_expdta.c p_model.c p_compnd.c report.c nsc.c area.c ssbond.c chk_res.c chk_atom.c turn.c pdbasn.c dssp.c outseq.c chkchain.c elem.c measure.c asngener.c p_endmdl.c stred.c contact_order.c contact_map.c + +@@ -15,12 +16,9 @@ + + BINDIR = . + +-.c.o: +- $(CC) -c $< -o $@ +- + + stride : $(OBJECT) +- $(CC) $(OBJECT) $(FLAGS) $(BINDIR)/stride${ARCH} ++ $(CC) $(LDFLAGS) $(OBJECT) $(LIBS) -o stride + + $(OBJECT) : stride.h protot.h + diff --git a/Golden_Repo/v/VMD/VMD-1.9.3_surf_Makefile.patch b/Golden_Repo/v/VMD/VMD-1.9.3_surf_Makefile.patch new file mode 100644 index 0000000000000000000000000000000000000000..93f430a64a158b7c7ca07cfee06a7e00b5251307 --- /dev/null +++ b/Golden_Repo/v/VMD/VMD-1.9.3_surf_Makefile.patch @@ -0,0 +1,112 @@ +Fix surf Makefile. +Use CC, CFLAGS, etc from EB. +Drop bad make depend lines. + +Åke Sandgren, 2017-05-02 +diff -ru vmd-1.9.3.orig/lib/surf/Makefile vmd-1.9.3/lib/surf/Makefile +--- vmd-1.9.3.orig/lib/surf/Makefile 1994-03-22 16:44:20.000000000 +0100 ++++ vmd-1.9.3/lib/surf/Makefile 2017-05-02 13:41:51.911991381 +0200 +@@ -1,12 +1,7 @@ + # Compilation flags +-#CC = cc +-CC = cc + INCLUDE = -I. +-#LINCLUDE = -lcurses -ltermcap -lm +-LINCLUDE = -lm +-OPT_CFLAGS = -O2 $(FLAGS) $(INCLUDE) +-#CFLAGS = -g $(FLAGS) $(INCLUDE) +-CFLAGS = -O2 $(FLAGS) $(INCLUDE) ++LIBS = -lm ++CFLAGS = $(OPT) $(INCLUDE) + + # These are the user object files in the application + SRCS = surf.c io.c compute.c dual.c utils.c lp.c chull.c tessel_cases.c \ +@@ -18,7 +13,7 @@ + + # make objects + surf: $(OBJS) Makefile +- $(CC) $(CFLAGS) $(OBJS) -o surf $(LINCLUDE) ++ $(CC) $(LDFLAGS) $(OBJS) -o surf $(LIBS) + + lint: + lint $(INCLUDE) $(SRCS) +@@ -30,9 +25,6 @@ + tar -cvf surf.tar README *.[hc] Makefile + compress surf.tar + +-.c.o: +- $(CC) $(CFLAGS) -c $*.c +- + + # make depend makes the proper include file dependencies. You _could_ run + # it on a sun4, but there's a bug in the SunOS version of sed that causes +@@ -61,48 +53,3 @@ + @ echo ' ' >> Makefile + + # DO NOT DELETE THIS LINE -- make depend depends on it. +- +- +-# DO NOT DELETE THIS LINE -- make depend depends on it. +- +-surf.o: surf.h /usr/include/stdio.h /usr/include/math.h /usr/include/stdlib.h +-surf.o: /usr/include/sgidefs.h /usr/include/string.h /usr/include/sys/time.h +-surf.o: linalg.h +-io.o: surf.h /usr/include/stdio.h /usr/include/math.h /usr/include/stdlib.h +-io.o: /usr/include/sgidefs.h /usr/include/string.h /usr/include/sys/time.h +-io.o: linalg.h +-compute.o: surf.h /usr/include/stdio.h /usr/include/math.h +-compute.o: /usr/include/stdlib.h /usr/include/sgidefs.h /usr/include/string.h +-compute.o: /usr/include/sys/time.h linalg.h chull.h dual.h +-dual.o: surf.h /usr/include/stdio.h /usr/include/math.h /usr/include/stdlib.h +-dual.o: /usr/include/sgidefs.h /usr/include/string.h /usr/include/sys/time.h +-dual.o: linalg.h dual.h chull.h +-utils.o: surf.h /usr/include/stdio.h /usr/include/math.h +-utils.o: /usr/include/stdlib.h /usr/include/sgidefs.h /usr/include/string.h +-utils.o: /usr/include/sys/time.h linalg.h +-lp.o: surf.h /usr/include/stdio.h /usr/include/math.h /usr/include/stdlib.h +-lp.o: /usr/include/sgidefs.h /usr/include/string.h /usr/include/sys/time.h +-lp.o: linalg.h +-chull.o: surf.h /usr/include/stdio.h /usr/include/math.h +-chull.o: /usr/include/stdlib.h /usr/include/sgidefs.h /usr/include/string.h +-chull.o: /usr/include/sys/time.h linalg.h chull.h +-tessel_cases.o: surf.h /usr/include/stdio.h /usr/include/math.h +-tessel_cases.o: /usr/include/stdlib.h /usr/include/sgidefs.h +-tessel_cases.o: /usr/include/string.h /usr/include/sys/time.h linalg.h dual.h +-tessel_patches.o: surf.h /usr/include/stdio.h /usr/include/math.h +-tessel_patches.o: /usr/include/stdlib.h /usr/include/sgidefs.h +-tessel_patches.o: /usr/include/string.h /usr/include/sys/time.h linalg.h +-tessel_convex.o: surf.h /usr/include/stdio.h /usr/include/math.h +-tessel_convex.o: /usr/include/stdlib.h /usr/include/sgidefs.h +-tessel_convex.o: /usr/include/string.h /usr/include/sys/time.h linalg.h +-tessel_concave.o: surf.h /usr/include/stdio.h /usr/include/math.h +-tessel_concave.o: /usr/include/stdlib.h /usr/include/sgidefs.h +-tessel_concave.o: /usr/include/string.h /usr/include/sys/time.h linalg.h +-tessel_torus.o: surf.h /usr/include/stdio.h /usr/include/math.h +-tessel_torus.o: /usr/include/stdlib.h /usr/include/sgidefs.h +-tessel_torus.o: /usr/include/string.h /usr/include/sys/time.h linalg.h +- +-# DEPENDENCIES MUST END AT END OF FILE +-# IF YOU PUT STUFF HERE IT WILL GO AWAY +-# see make depend above +- +diff -ru vmd-1.9.3.orig/lib/surf/surf.c vmd-1.9.3/lib/surf/surf.c +--- vmd-1.9.3.orig/lib/surf/surf.c 1994-03-21 10:33:00.000000000 +0100 ++++ vmd-1.9.3/lib/surf/surf.c 2017-05-02 13:41:51.911991381 +0200 +@@ -7,7 +7,7 @@ + #define EXTERN + #include "surf.h" + +-void ++int + main(ac,av) + int ac; + char* av[]; +@@ -56,6 +56,8 @@ + if (Write_Option == 2) output_dataset(); + + if (Write_Option) end_output_dataset(); ++ ++ return(0); + } + + diff --git a/Golden_Repo/v/VMD/VMD-1.9.3_surf_bad_printfs.patch b/Golden_Repo/v/VMD/VMD-1.9.3_surf_bad_printfs.patch new file mode 100644 index 0000000000000000000000000000000000000000..9b9db3889bf08c48fb6a469303e1db1423d2b734 --- /dev/null +++ b/Golden_Repo/v/VMD/VMD-1.9.3_surf_bad_printfs.patch @@ -0,0 +1,74 @@ +Fix some bad printfs in surf. + +Åke Sandgren, 2017-05-02 +diff -ru vmd-1.9.3.orig/lib/surf/chull.c vmd-1.9.3/lib/surf/chull.c +--- vmd-1.9.3.orig/lib/surf/chull.c 1994-03-19 06:50:54.000000000 +0100 ++++ vmd-1.9.3/lib/surf/chull.c 2017-05-02 13:44:07.046582827 +0200 +@@ -378,7 +378,7 @@ + print_out( v ) + struct tvertex *v; + { +- fprintf( stderr, "\nAdding vertex %6x :\n", v ); ++ fprintf( stderr, "\nAdding vertex %6p :\n", v ); + print_verts(); + print_edges(); + print_fs(); +@@ -398,11 +398,11 @@ + temp = vertices; + fprintf (stderr, "Vertex List\n"); + if (vertices) do { +- fprintf(stderr," addr %6x\t", vertices ); ++ fprintf(stderr," addr %6p\t", vertices ); + fprintf(stderr,"(%g,%g,%g)",vertices->v[X], + vertices->v[Y], vertices->v[Z] ); + fprintf(stderr," active:%3d", vertices->active ); +- fprintf(stderr," duplicate:%5x", vertices->duplicate ); ++ fprintf(stderr," duplicate:%5p", vertices->duplicate ); + fprintf(stderr," mark:%2d\n", vertices->mark ); + vertices = vertices->next; + } while ( vertices != temp ); +@@ -424,13 +424,13 @@ + temp = edges; + fprintf (stderr, "Edge List\n"); + if (edges) do { +- fprintf( stderr, " addr: %6x\t", edges ); ++ fprintf( stderr, " addr: %6p\t", edges ); + fprintf( stderr, "adj: "); + for (i=0; i<3; ++i) +- fprintf( stderr, "%6x", edges->adjface[i] ); ++ fprintf( stderr, "%6p", edges->adjface[i] ); + fprintf( stderr, " endpts:"); + for (i=0; i<2; ++i) +- fprintf( stderr, "%8x", edges->endpts[i]); ++ fprintf( stderr, "%8p", edges->endpts[i]); + fprintf( stderr, " del:%3d\n", edges->deleted ); + edges = edges->next; + } while (edges != temp ); +@@ -452,13 +452,13 @@ + temp = faces; + fprintf (stderr, "Face List\n"); + if (faces) do { +- fprintf(stderr, " addr: %6x\t", faces ); ++ fprintf(stderr, " addr: %6p\t", faces ); + fprintf(stderr, " edges:"); + for( i=0; i<3; ++i ) +- fprintf(stderr, "%6x", faces->edg[i] ); ++ fprintf(stderr, "%6p", faces->edg[i] ); + fprintf(stderr, " vert:"); + for ( i=0; i<3; ++i) +- fprintf(stderr, "%6x", faces->vert[i] ); ++ fprintf(stderr, "%6p", faces->vert[i] ); + fprintf(stderr, " vis: %d\n", faces->visible ); + faces= faces->next; + } while ( faces != temp ); +@@ -552,8 +552,8 @@ + temp_v = temp_v->next; + } while ( temp_v != vertices ); + do { +- printf("3%5d%6d%6d\n", temp_f->vert[0]->vnum, +- temp_f->vert[1]->vnum, temp_f->vert[2]->vnum ); ++ printf("3%5d%6d%6d\n", temp_f->vert[0]->vnum[0], ++ temp_f->vert[1]->vnum[0], temp_f->vert[2]->vnum[0] ); + temp_f = temp_f->next; + } while ( temp_f != faces ); + } diff --git a/Golden_Repo/v/VMD/VMD-1.9.4a43-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb b/Golden_Repo/v/VMD/VMD-1.9.4a43-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..839bad4007e6dd32bd43c473e50d48310a5f9a92 --- /dev/null +++ b/Golden_Repo/v/VMD/VMD-1.9.4a43-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb @@ -0,0 +1,66 @@ +name = 'VMD' +version = '1.9.4a43' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.ks.uiuc.edu/Research/vmd' +description = """VMD is a molecular visualization program for displaying, animating, +and analyzing large biomolecular systems using 3-D graphics and built-in scripting.""" + +site_contacts = 'j.goebbert@fz-juelich.de' + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} + +source_urls = [ + 'https://www.ks.uiuc.edu/Research/vmd/vmd-1.9.4/files/alpha/', + 'https://www.ks.uiuc.edu/Research/vmd/vmd-%(version)s/files/final', + 'http://webclu.bio.wzw.tum.de/stride/' +] +sources = [ + 'vmd-%(version)s.src.tar.gz', + {'filename': 'stride.tar.gz', 'extract_cmd': "tar -C vmd-%(version)s/lib/stride -xf %s"}, +] +patches = [ + ('VMD-1.9.3_plugins.patch'), + ('VMD-1.9.3_surf_Makefile.patch', 'vmd-%(version)s'), + ('VMD-1.9.3_surf_bad_printfs.patch', 'vmd-%(version)s'), + ('VMD-1.9.3_stride_Makefile.patch', 'vmd-%(version)s'), + ('VMD-1.9.3_stride_MAX_AT_IN_RES.patch', 'vmd-%(version)s'), + ('VMD-%(version)s_configure.patch', 'vmd-%(version)s'), + ('VMD-%(version)s_extra_colors.patch', 'vmd-%(version)s'), +] +checksums = [ + '84323b2c34db8ce5739372dd6e225ef1fa1dc5c4b82d3810d55923a653b1bdc0', # vmd-1.9.4a43.src.tar.gz + '51a8bc2988bb184bd08216124f61725225bb1a6f563bdf8cd35154cb5d621c1a', # stride.tar.gz + '85760d6ae838e2b09801e34b36b484532383f7aaf2e8634b3ef808002a92baa3', # VMD-1.9.3_plugins.patch + 'd5cfa88064b7cffbc75accd69707d4e45fda974e8127de9ab606fdad501bd68a', # VMD-1.9.3_surf_Makefile.patch + 'f3c2a8c155e38db8e644cee6a01f6beaea5988e72ac74cde26b71670b151cc34', # VMD-1.9.3_surf_bad_printfs.patch + 'eb194ac0d8c086b73f87b29f7d732687f902431b1cdfa139c090401fefdee51e', # VMD-1.9.3_stride_Makefile.patch + 'eff1ca00cec637a6c8a156b2fb038e078d1835ba0eb15a571ed820bca5a866d9', # VMD-1.9.3_stride_MAX_AT_IN_RES.patch + 'b2735cd79a4a2ecb9e1f0a1b974b3bc7dd6615ed375b69e155ec8481347e1fcf', # VMD-1.9.4_configure.patch + '253eba282b570eb00e4764f46f77fd5ca898d10360d5707dd50ad1f14615af80', # VMD-1.9.4_extra_colors.patch +] + +dependencies = [ + ('Python', '3.8.5'), + ('SciPy-Stack', '2020', versionsuffix), + ('Tcl', '8.6.10'), + ('Tk', '8.6.10'), + ('FLTK', '1.3.5'), + ('X11', '20200222'), + ('fontconfig', '2.13.92'), + ('OpenGL', '2020'), + ('netCDF', '4.7.4', '-serial'), + ('FFmpeg', '4.3.1'), + ('ImageMagick', '7.0.10-25'), + ('ACTC', '1.1'), + ('OptiX', '6.5.0', '', SYSTEM), + ('zlib', '1.2.11'), + ('libpng', '1.6.37'), + ('CUDA', '11.0', '', SYSTEM), +] + +prebuildopts = ' NVCC_GENCODE="-gencode=arch=compute_70,code=sm_70 \ + -gencode=arch=compute_75,code=sm_75 \ + -gencode=arch=compute_80,code=sm_80"' + +moduleclass = 'vis' diff --git a/Golden_Repo/v/VMD/VMD-1.9.4a43_configure.patch b/Golden_Repo/v/VMD/VMD-1.9.4a43_configure.patch new file mode 100644 index 0000000000000000000000000000000000000000..d42835b7a8c8d983eeacea58c09a87c72f68cb62 --- /dev/null +++ b/Golden_Repo/v/VMD/VMD-1.9.4a43_configure.patch @@ -0,0 +1,205 @@ +--- configure.orig 2020-12-31 17:02:47.266221000 +0100 ++++ configure 2021-01-02 17:45:22.669512696 +0100 +@@ -493,17 +493,18 @@ + + $arch_cc = "cc"; + $arch_ccpp = "CC"; +-$arch_nvcc = "/usr/local/cuda-10.2/bin/nvcc"; ++$arch_nvcc = "nvcc"; + $arch_nvccflags = "-lineinfo --ptxas-options=-v " . +- "-gencode arch=compute_30,code=compute_30 " . +- "-gencode arch=compute_30,code=sm_35 " . +- "-gencode arch=compute_30,code=sm_37 " . + "-gencode arch=compute_50,code=compute_50 " . + "-gencode arch=compute_50,code=sm_50 " . + "-gencode arch=compute_60,code=compute_60 " . + "-gencode arch=compute_60,code=sm_60 " . + "-gencode arch=compute_70,code=compute_70 " . + "-gencode arch=compute_70,code=sm_70 " . ++ "-gencode arch=compute_75,code=compute_75 " . ++ "-gencode arch=compute_75,code=sm_75 " . ++ "-gencode arch=compute_80,code=compute_80 " . ++ "-gencode arch=compute_80,code=sm_80 " . + "--ftz=true "; + # "-gencode arch=compute_75,code=sm_75 " . + $arch_gcc = "gcc"; +@@ -629,17 +630,17 @@ + # location of Mesa library and include files; basically does the same + # as OpenGL. This is based on the default instructions from the Mesa + # README; the include files should by default be in /usr/local/include/GL. +-$mesa_dir = "$vmd_library_dir/Mesa"; ++$mesa_dir = $ENV{'EBROOTOPENGL'}; + $mesa_include = "-I$mesa_dir/include"; + $mesa_library = "-L$mesa_dir/lib_$config_arch"; + #$mesa_libs = "-lMesaGL -lMesaGLU"; +-$mesa_libs = "-lMesaGL"; ++$mesa_libs = "-lGL -lGLU"; + $mesa_defines = "-DUSELINEAXES -DVMDMESA -DVMDOPENGL"; + @mesa_cc = (); + @mesa_cu = (); +-@mesa_ccpp = @opengl_ccpp; +-@mesa_h = @opengl_h; +-@mesa_extra = @opengl_extra; ++@mesa_ccpp = (); ++@mesa_h = (); ++@mesa_extra = (); + + + # +@@ -714,10 +715,10 @@ + + ################ FLTK GUI + $fltk_defines = "-DVMDGUI -DVMDFLTK"; +-$fltk_dir = "$vmd_library_dir/fltk"; ++$fltk_dir = $ENV{'EBROOTFLTK'}; + $fltk_include = "-I$fltk_dir/include"; + $fltk_library = "-L$fltk_dir/$config_arch"; +-$fltk_libs = "-lfltk -lX11"; ++$fltk_libs = "-lfltk -L$ENV{'EBROOTFONTCONFIG'}/lib -lfontconfig -lX11 -lXrender -lXft -lXfixes -lXcursor -lXinerama"; + #@fltk_cc = ('forms_ui.c'); + @fltk_cu = (); + @fltk_ccpp = ( 'ColorFltkMenu.C', +@@ -759,7 +760,6 @@ + $stock_tcl_include_dir=$ENV{"TCL_INCLUDE_DIR"} || "$vmd_library_dir/tcl/include"; + $stock_tcl_library_dir=$ENV{"TCL_LIBRARY_DIR"} || "$vmd_library_dir/tcl/lib_$config_arch"; + +- + # location of Tk (for TK option) + #$stock_tk_include_dir=$ENV{"TK_INCLUDE_DIR"} || "/usr/local/include"; + #$stock_tk_library_dir=$ENV{"TK_LIBRARY_DIR"} || "/usr/local/lib"; +@@ -777,8 +777,8 @@ + if ($config_tk) { $tcl_include .= " -I$stock_tk_include_dir"; } + $tcl_library = "-L$stock_tcl_library_dir"; + if ($config_tk) { $tcl_library .= " -L$stock_tk_library_dir"; } +-$tcl_libs = "-ltcl8.5"; +-if ($config_tk) { $tcl_libs = "-ltk8.5 -lX11 " . $tcl_libs; } ++$tcl_libs = "-ltcl8.6"; ++if ($config_tk) { $tcl_libs = "-ltk8.6 -lX11 " . $tcl_libs; } + + @tcl_cc = (); + @tcl_cu = (); +@@ -942,7 +942,7 @@ + # This option enables the use of CUDA GPU acceleration functions. + ####################### + $cuda_defines = "-DVMDCUDA -DMSMPOT_CUDA"; +-$cuda_dir = "/usr/local/cuda-10.2"; ++$cuda_dir = "$ENV{'CUDA_HOME'}"; + $cuda_include = ""; + $cuda_library = ""; + $cuda_libs = "-Wl,-rpath -Wl,\$\$ORIGIN/ -lcudart_static -lrt"; +@@ -1151,7 +1151,7 @@ + # $liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-5.0.1-linux64"; + # $liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-5.1.0-linux64"; + # $liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-6.0.0-linux64"; +-$liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-6.5.0-linux64"; ++$liboptix_dir = "$ENV{'EBROOTOPTIX'}"; + # $liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-7.0.0-linux64"; + + # NCSA Blue Waters +@@ -1306,7 +1306,7 @@ + die "LIBPNG option requires ZLIB!"; + } + $libpng_defines = "-DVMDLIBPNG"; +-$libpng_dir = "/Projects/vmd/vmd/lib/libpng"; ++$libpng_dir = "$ENV{'EBROOTLIBPNG'}"; + $libpng_include = "-I$libpng_dir/include"; + $libpng_library = "-L$libpng_dir/lib_$config_arch"; + $libpng_libs = "-lpng16"; +@@ -1334,7 +1334,7 @@ + # OPTIONAL COMPONENT: Data compresssion library + # This may be commented out if not required. + $zlib_defines = "-DVMDZLIB"; +-$zlib_dir = "/Projects/vmd/vmd/lib/zlib"; ++$zlib_dir = "$ENV{'EBROOTZLIB'}"; + $zlib_include = "-I$zlib_dir/include"; + $zlib_library = "-L$zlib_dir/lib_$config_arch"; + $zlib_libs = "-lz"; +@@ -1525,7 +1525,7 @@ + # primitives. + ####################### + $actc_defines = "-DVMDACTC"; +-$actc_dir = "$vmd_library_dir/actc"; ++$actc_dir = "$ENV{'EBROOTACTC'}"; + $actc_include = "-I$actc_dir/include"; + $actc_library = "-L$actc_dir/lib_$config_arch"; + $actc_libs = "-lactc"; +@@ -1540,7 +1540,7 @@ + # OPTIONAL COMPONENT: NetCDF I/O Library (Used by cdfplugin) + ####################### + $netcdf_defines = ""; +-$netcdf_dir = "$vmd_library_dir/netcdf"; ++$netcdf_dir = "$ENV{'EBROOTNETCDF'}"; + $netcdf_include = "-I$netcdf_dir/include"; + $netcdf_library = "-L$netcdf_dir/lib_$config_arch"; + $netcdf_libs = "-lnetcdf"; +@@ -1593,18 +1593,18 @@ + # If left blank, standard system directories will be searched. + #$stock_python_include_dir=$ENV{"PYTHON_INCLUDE_DIR"} || "/usr/local/include"; + #$stock_python_library_dir=$ENV{"PYTHON_LIBRARY_DIR"} || "/usr/local/lib"; +-$stock_python_include_dir=$ENV{"PYTHON_INCLUDE_DIR"} || "$vmd_library_dir/python/lib_$config_arch/include/python2.5"; +-$stock_python_library_dir=$ENV{"PYTHON_LIBRARY_DIR"} || "$vmd_library_dir/python/lib_$config_arch/lib/python2.5/config"; ++$stock_python_include_dir=$ENV{'PYTHON_INCLUDE_DIR'} || "$vmd_library_dir/python/lib_$config_arch/include/python2.5"; ++$stock_python_library_dir=$ENV{'PYTHON_LIBRARY_DIR'} || "$vmd_library_dir/python/lib_$config_arch/lib/python2.5/config"; + + #$stock_numpy_include_dir=$ENV{"NUMPY_INCLUDE_DIR"} || "/usr/local/include"; + #$stock_numpy_library_dir=$ENV{"NUMPY_LIBRARY_DIR"} || "/usr/local/lib"; +-$stock_numpy_include_dir=$ENV{"NUMPY_INCLUDE_DIR"} || "$vmd_library_dir/numpy/lib_$config_arch/include"; +-$stock_numpy_library_dir=$ENV{"NUMPY_LIBRARY_DIR"} || "$vmd_library_dir/python/lib_$config_arch/lib/python2.5/site-packages/numpy/core/include"; ++$stock_numpy_include_dir=$ENV{'NUMPY_INCLUDE_DIR'} || "$vmd_library_dir/numpy/lib_$config_arch/include"; ++$stock_numpy_library_dir="$ENV{'NUMPY_INCLUDE_DIR'}/../lib" || "$vmd_library_dir/python/lib_$config_arch/lib/python2.5/site-packages/numpy/core/include"; + + $python_defines = "-DVMDPYTHON"; + $python_include = "-I$stock_python_include_dir -I$stock_numpy_include_dir -I$stock_numpy_library_dir"; + $python_library = "-L$stock_python_library_dir"; +-$python_libs = "-lpython2.5 -lpthread"; ++$python_libs = "-lpython3.8 -lpthread"; + @python_h = ('PythonTextInterp.h', + 'VMDTkinterMenu.h', + 'py_commands.h', +@@ -2513,7 +2513,7 @@ + + if ($config_cuda) { + $arch_nvccflags .= " --machine 64 -O3 $cuda_include"; +- $cuda_library = "-L/usr/local/cuda-10.2/lib64"; ++ $cuda_library = "-L$ENV{'EBROOTCUDA'}/lib64"; + } + + $arch_lex = "flex"; # has problems with vendor lex +@@ -2522,8 +2522,8 @@ + # override code probably date back to RHEL4.x or earlier, and + # they likely serve no useful purpose going forward. + if (!$config_opengl_dispatch) { +- $opengl_dep_libs = "-L/usr/X11R6/lib64 -lGL -lX11"; +- $mesa_libs = "-lMesaGL -L/usr/X11R6/lib64 -lXext -lX11"; ++ $opengl_dep_libs = "-L$ENV{'EBROOTOPENGL'}/lib -lGL -L$ENV{'EBROOTX11'}/lib -lX11"; ++ $mesa_libs = "-lGL -lGLU -L$ENV{'EBROOTX11'}/lib -lXext -lX11"; + } + + # this is to make tcl happy +@@ -2551,7 +2551,7 @@ + + $arch_nvcc = "/usr/local/cuda/bin/nvcc"; + $arch_nvccflags = "--ptxas-options=-v " . +- "-gencode arch=compute_30,code=compute_30 " . ++ "-gencode arch=compute_50,code=compute_50 " . + "-gencode arch=compute_70,code=compute_70 " . + "--ftz=true "; + $cuda_library = "-L/usr/local/cuda/lib64"; +@@ -2913,7 +2913,7 @@ + + # Only generate code for SM 7.0 on Summit + $arch_nvccflags = "--ptxas-options=-v " . +- "-gencode arch=compute_30,code=compute_30 " . ++ "-gencode arch=compute_50,code=compute_50 " . + "-gencode arch=compute_70,code=sm_70 " . + "--ftz=true "; + $arch_nvccflags .= " --machine 64 -O3 $cuda_include"; +@@ -3541,7 +3541,7 @@ + + .cu.ptx: + \$(ECHO) "Compiling " \$< " --> " \$*.ptx " ..."; \\ +- \$(NVCC) \$(DEFINES) --use_fast_math $liboptix_include -gencode arch=compute_30,code=compute_30 -ptx \$< $arch_coptout$vmd_arch_dir/\$\@ ++ \$(NVCC) \$(DEFINES) --use_fast_math $liboptix_include -gencode arch=compute_60,code=compute_60 -ptx \$< $arch_coptout$vmd_arch_dir/\$\@ + + .y.o: + diff --git a/Golden_Repo/v/VMD/VMD-1.9.4a43_extra_colors.patch b/Golden_Repo/v/VMD/VMD-1.9.4a43_extra_colors.patch new file mode 100644 index 0000000000000000000000000000000000000000..26e9ba954dbbbb816975a947d97c4d1a69ca1f95 --- /dev/null +++ b/Golden_Repo/v/VMD/VMD-1.9.4a43_extra_colors.patch @@ -0,0 +1,46 @@ +Add some additional colors, e.g. to allow for color blind compatible rendering. +Bob Dröge, 2020-06-23 +--- src/Scene.C.orig 2020-06-23 09:37:41.000000000 +0200 ++++ src/Scene.C 2020-06-23 09:40:59.000000000 +0200 +@@ -63,7 +63,10 @@ + ,"yellow2", "yellow3", "green2", "green3", + "cyan2", "cyan3", "blue2", "blue3", + "violet", "violet2", "magenta", "magenta2", +- "red2", "red3", "orange2", "orange3" ++ "red2", "red3", "orange2", "orange3", ++ "matisse", "flamenco", "forest_green", "punch", ++ "wisteria", "spicy_mix", "orchid", "gray2", ++ "lime_pie", "java" + #endif + + }; +@@ -89,7 +92,17 @@ + 0.27f, 0.00f, 0.98f, 0.45f, 0.00f, 0.90f, // violet + 0.90f, 0.00f, 0.90f, 1.00f, 0.00f, 0.66f, // magenta + 0.98f, 0.00f, 0.23f, 0.81f, 0.00f, 0.00f, // red +- 0.89f, 0.35f, 0.00f, 0.96f, 0.72f, 0.00f // orange ++ 0.89f, 0.35f, 0.00f, 0.96f, 0.72f, 0.00f, // orange ++ 0.1f, 0.5f, 0.7f, // MPL1, matisse ++ 1.0f, 0.5f, 0.1f, // MPL2, flamenco ++ 0.2f, 0.6f, 0.2f, // MPL3, forest green ++ 0.8f, 0.2f, 0.2f, // MPL4, punch ++ 0.6f, 0.4f, 0.7f, // MPL5, wisteria ++ 0.5f, 0.3f, 0.3f, // MPL6, spicy mix ++ 0.9f, 0.5f, 0.8f, // MPL7, orchid ++ 0.5f, 0.5f, 0.5f, // MPL8, gray ++ 0.7f, 0.7f, 0.1f, // MPL9, key lime pie ++ 0.1f, 0.7f, 0.8f // MPL10, java + #endif + + }; +--- src/Scene.h.orig 2020-06-23 09:37:45.000000000 +0200 ++++ src/Scene.h 2020-06-23 09:42:21.000000000 +0200 +@@ -37,7 +37,7 @@ + #define DISP_LIGHTS 4 + + // total number of colors defined here +-#define REGCLRS 33 ++#define REGCLRS 43 + #define EXTRACLRS 1 + #define VISCLRS (REGCLRS - EXTRACLRS) + #define MAPCLRS 1024 diff --git a/Golden_Repo/w/Wannier90/Wannier90-3.1.0-gomkl-2020.eb b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-gomkl-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..6b1ddb87637ff8ff7f1e4e776be5bbd60afc6572 --- /dev/null +++ b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-gomkl-2020.eb @@ -0,0 +1,34 @@ +easyblock = 'MakeCp' + +name = 'Wannier90' +version = '3.1.0' + +homepage = 'http://www.wannier.org' +description = """A tool for obtaining maximally-localised Wannier functions""" + +site_contacts = 'Sebastian Achilles <s.achilles@fz-juelich.de>' + +toolchain = {'name': 'gomkl', 'version': '2020'} +toolchainopts = {'usempi': True} + +github_account = 'wannier-developers' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = ['Wannier90_3x_ignore_makeinc.patch'] +checksums = [ + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz + '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch +] + +buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS" LDOPTS="$FFLAGS" ' +buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' +buildopts += 'COMMS=mpi' + +files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/Golden_Repo/w/Wannier90/Wannier90-3.1.0-gpsmkl-2020.eb b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-gpsmkl-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..955ab3844e43db3417515778632707acfef08e51 --- /dev/null +++ b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-gpsmkl-2020.eb @@ -0,0 +1,34 @@ +easyblock = 'MakeCp' + +name = 'Wannier90' +version = '3.1.0' + +homepage = 'http://www.wannier.org' +description = """A tool for obtaining maximally-localised Wannier functions""" + +site_contacts = 'Sebastian Achilles <s.achilles@fz-juelich.de>' + +toolchain = {'name': 'gpsmkl', 'version': '2020'} +toolchainopts = {'usempi': True} + +github_account = 'wannier-developers' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = ['Wannier90_3x_ignore_makeinc.patch'] +checksums = [ + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz + '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch +] + +buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS" LDOPTS="$FFLAGS" ' +buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' +buildopts += 'COMMS=mpi' + +files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/Golden_Repo/w/Wannier90/Wannier90-3.1.0-intel-2020.eb b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-intel-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..1213466adf65bed0950c52590671b837f6f58bc2 --- /dev/null +++ b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-intel-2020.eb @@ -0,0 +1,34 @@ +easyblock = 'MakeCp' + +name = 'Wannier90' +version = '3.1.0' + +homepage = 'http://www.wannier.org' +description = """A tool for obtaining maximally-localised Wannier functions""" + +site_contacts = 'Sebastian Achilles <s.achilles@fz-juelich.de>' + +toolchain = {'name': 'intel', 'version': '2020'} +toolchainopts = {'usempi': True} + +github_account = 'wannier-developers' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = ['Wannier90_3x_ignore_makeinc.patch'] +checksums = [ + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz + '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch +] + +buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS" LDOPTS="$FFLAGS" ' +buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' +buildopts += 'COMMS=mpi' + +files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/Golden_Repo/w/Wannier90/Wannier90-3.1.0-intel-para-2020.eb b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-intel-para-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..93b6bcf45d566c79db0de340af4e758cf82eba07 --- /dev/null +++ b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-intel-para-2020.eb @@ -0,0 +1,34 @@ +easyblock = 'MakeCp' + +name = 'Wannier90' +version = '3.1.0' + +homepage = 'http://www.wannier.org' +description = """A tool for obtaining maximally-localised Wannier functions""" + +site_contacts = 'Sebastian Achilles <s.achilles@fz-juelich.de>' + +toolchain = {'name': 'intel-para', 'version': '2020'} +toolchainopts = {'usempi': True} + +github_account = 'wannier-developers' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = ['Wannier90_3x_ignore_makeinc.patch'] +checksums = [ + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz + '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch +] + +buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS" LDOPTS="$FFLAGS" ' +buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' +buildopts += 'COMMS=mpi' + +files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/Golden_Repo/w/Wannier90/Wannier90-3.1.0-iomkl-2020.eb b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-iomkl-2020.eb new file mode 100644 index 0000000000000000000000000000000000000000..101aab8efba103fd4c316b0ff9fc48a862c430fc --- /dev/null +++ b/Golden_Repo/w/Wannier90/Wannier90-3.1.0-iomkl-2020.eb @@ -0,0 +1,34 @@ +easyblock = 'MakeCp' + +name = 'Wannier90' +version = '3.1.0' + +homepage = 'http://www.wannier.org' +description = """A tool for obtaining maximally-localised Wannier functions""" + +site_contacts = 'Sebastian Achilles <s.achilles@fz-juelich.de>' + +toolchain = {'name': 'iomkl', 'version': '2020'} +toolchainopts = {'usempi': True} + +github_account = 'wannier-developers' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = ['Wannier90_3x_ignore_makeinc.patch'] +checksums = [ + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz + '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch +] + +buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS" LDOPTS="$FFLAGS" ' +buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' +buildopts += 'COMMS=mpi' + +files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/Golden_Repo/w/Wannier90/Wannier90_3x_ignore_makeinc.patch b/Golden_Repo/w/Wannier90/Wannier90_3x_ignore_makeinc.patch new file mode 100644 index 0000000000000000000000000000000000000000..03ccb352edc33ed8b351513c6f2fce7dd2189b53 --- /dev/null +++ b/Golden_Repo/w/Wannier90/Wannier90_3x_ignore_makeinc.patch @@ -0,0 +1,32 @@ +avoid including make.inc, which contains hardcoding settings we don't need/want +author: J-M Beuken +diff -Nru wannier90-3.0.0.orig/src/Makefile.2 wannier90-3.0.0/src/Makefile.2 +--- wannier90-3.0.0.orig/src/Makefile.2 2019-06-26 22:47:08.067494977 +0200 ++++ wannier90-3.0.0/src/Makefile.2 2019-06-26 22:47:35.313193842 +0200 +@@ -2,7 +2,7 @@ + # Should be no need to change below this line + # + +-include ../../make.inc ++#include ../../make.inc + + # Contains definition of OBJS, OBJSLIB, OBJS_POST, LIBRARY, DYNLIBRARY + include ../Makefile.header +diff -Nru wannier90-3.0.0.orig/utility/w90pov/Makefile wannier90-3.0.0/utility/w90pov/Makefile +--- wannier90-3.0.0.orig/utility/w90pov/Makefile 2019-06-26 22:47:08.148494082 +0200 ++++ wannier90-3.0.0/utility/w90pov/Makefile 2019-06-26 23:02:34.442673824 +0200 +@@ -1,4 +1,4 @@ +-include ../../make.inc ++#include ../../make.inc + + SRC=src + OBJ=obj +diff -Nru wannier90-3.0.0.orig/utility/w90vdw/Makefile wannier90-3.0.0/utility/w90vdw/Makefile +--- wannier90-3.0.0.orig/utility/w90vdw/Makefile 2019-06-26 22:47:08.153494027 +0200 ++++ wannier90-3.0.0/utility/w90vdw/Makefile 2019-06-26 23:03:01.118385092 +0200 +@@ -1,4 +1,4 @@ +-include ../../make.inc ++#include ../../make.inc + + w90vdw.x: w90vdw.f90 + $(F90) $(FCOPTS) $< -o $@ diff --git a/Golden_Repo/x/XCFun/XCFun-20190127-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb b/Golden_Repo/x/XCFun/XCFun-20190127-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb new file mode 100644 index 0000000000000000000000000000000000000000..88365a887ccd7205de0c4cdb960dea453292f965 --- /dev/null +++ b/Golden_Repo/x/XCFun/XCFun-20190127-gcccoremkl-9.3.0-2020.2.254-Python-3.8.5.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'XCFun' +version = '20190127' +local_commit = 'a486a3f' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://dftlibs.org/xcfun/' +description = """ XCFun is a library of DFT exchange-correlation (XC) functionals. + It is based on automatic differentiation and can therefore generate arbitrary order + derivatives of these functionals. """ + +toolchain = {'name': 'gcccoremkl', 'version': '9.3.0-2020.2.254'} +toolchainopts = {'pic': True} + +site_contacts = 'j.goebbert@fz-juelich.de' + +source_urls = ['https://github.com/dftlibs/xcfun/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['afde6dbbc8c2167e986a9a3d41716e7e2f0981d7ede8106065c6309588460972'] + +builddependencies = [ + ('CMake', '3.18.0') +] + +dependencies = [ + ('Python', '3.8.5'), +] + +separate_build_dir = True + +sanity_check_paths = { + 'files': ['lib/libxcfun.a', 'lib/libxcfun.%s' % SHLIB_EXT], + 'dirs': ['include/XCFun'] +} + +modextrapaths = {'CPATH': 'include/XCFun'} + +moduleclass = 'tools' diff --git a/bin/ebw b/bin/ebw new file mode 100755 index 0000000000000000000000000000000000000000..0f3516266d00637e46583bd1fd6e2200ef5d649d --- /dev/null +++ b/bin/ebw @@ -0,0 +1,70 @@ +#!/bin/env python3 + +import distutils.spawn +import os +import re +import subprocess +import sys + +def get_eb_basepaths(eb_path): + dirs = os.listdir(eb_path) + f_dirs = [] + for d in dirs: + if os.path.isdir(os.path.join(eb_path, d)): + if 'overlay' in d: + f_dirs = f_dirs + get_eb_basepaths(os.path.join(eb_path, d)) + else: + f_dirs.append(os.path.join(eb_path, d)) + return f_dirs + +dirs = get_eb_basepaths((os.path.join("/p/fastdata/zam/swmanage/EasyBuild", os.getenv("STAGE"), "Golden_Repo"))) +pkgs_w_dash = [] +for d in dirs: + pkgs = [p for p in os.listdir(d) if os.path.isdir(os.path.join(d, p))] + for p in pkgs: + if '-' in p and p not in pkgs_w_dash: + pkgs_w_dash.append(p) + +if not distutils.spawn.find_executable("eb"): + print("Failed to execute the 'eb' command! Is it in the $PATH?") + sys.exit() + +if len(sys.argv) < 2: + print("This is an EasyBuild wrapper to automatically hide packages that are listed as hidden dependencies") + sys.exit() + +hidden_pkgs = os.getenv("EASYBUILD_HIDE_DEPS").split(',') + +pkgs = [] +pkgs_to_hide = [] +opts = [] + +args = sys.argv[1:] + +for i in args: + if re.search("\.eb$", i): + ec = i.split('/')[-1] + name = None + for j in pkgs_w_dash: + if re.search("^%s" % j.replace('++', '\+\+'), ec): + name = j + break + if not name: + name = ec.split('-')[0].split('.')[0] + + if name in hidden_pkgs: + print("Hidding %s" % name) + pkgs_to_hide += [i] + else: + pkgs += [i] + else: + opts += [i] + +if len(pkgs_to_hide) > 0: + print(['eb']+pkgs_to_hide+opts+['--hidden']) + os.system(' '.join(['eb'] + pkgs_to_hide + opts + ['--hidden'])) + + +if len(pkgs) > 0: + print(['eb']+pkgs+opts) + os.system(' '.join(['eb'] + pkgs + opts))