diff --git a/Golden_Repo/n/NVHPC/NVHPC-23.1.eb b/Golden_Repo/n/NVHPC/NVHPC-23.1.eb new file mode 100644 index 0000000000000000000000000000000000000000..a7fe10e3b168927c89b6cea4dc009fd59b4510ed --- /dev/null +++ b/Golden_Repo/n/NVHPC/NVHPC-23.1.eb @@ -0,0 +1,73 @@ +name = 'NVHPC' +version = '23.1' +local_gccver = '11.3.0' + +homepage = 'https://developer.nvidia.com/hpc-sdk/' +description = """C, C++ and Fortran compilers included with the NVIDIA HPC SDK (previously: PGI)""" + +toolchain = SYSTEM + +# By downloading, you accept the HPC SDK Software License Agreement (https://docs.nvidia.com/hpc-sdk/eula/index.html) +source_urls = ['https://developer.download.nvidia.com/hpc-sdk/%(version)s/'] +local_tarball_tmpl = 'nvhpc_2023_%%(version_major)s%%(version_minor)s_Linux_%s_cuda_multi.tar.gz' +sources = [local_tarball_tmpl % '%(arch)s'] +checksums = [ + { + local_tarball_tmpl % 'aarch64': + '5b430e03752954ea62ac1c745b1735cfdaa43b2e981a9412c1465ecb0412fff6', + local_tarball_tmpl % 'ppc64le': + '81759e7c747bf4f552b75e7657301f76ecc0828b94fe860f81108c6e83e6ad2b', + local_tarball_tmpl % 'x86_64': + '55a064415f6d4ce6a01823ee27ebd266f4fb579679871e7c1a7c054bdc18e9f5', + } +] + +dependencies = [ + ('GCCcore', local_gccver), + ('binutils', '2.38', '', ('GCCcore', local_gccver)), + ('CUDA', '11.7', '', SYSTEM), + # This is necessary to avoid cases where just libnuma.so.1 is present in the system and -lnuma fails + ('numactl', '2.0.15', '', ('GCCcore', local_gccver)) +] + +module_add_cuda = False + +# 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/22.3/cuda/) +# for NVHPC 22.3, those are: 11.6, 11.0, 10.2; +# this version can be tweaked from the EasyBuild command line with +# --try-amend=default_cuda_version="11.0" (for example) +default_cuda_version = '%(cudaver)s' + +# 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 CUDA as a dependency, for example +# dependencies = [('CUDA', '11.5.0')] +# 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' diff --git a/Golden_Repo/n/npsmpic/npsmpic-2022a.eb b/Golden_Repo/n/npsmpic/npsmpic-2022a.eb index b7c3900a29530edc7f1d33078fb1e79babdd5edd..863cd7d65002dacac9067cabdf7c07efe737f5d3 100644 --- a/Golden_Repo/n/npsmpic/npsmpic-2022a.eb +++ b/Golden_Repo/n/npsmpic/npsmpic-2022a.eb @@ -8,7 +8,7 @@ description = 'NVHPC based compiler toolchain, including Parastation MPICH2 for toolchain = SYSTEM -local_compiler = ('NVHPC', '22.11') +local_compiler = ('NVHPC', '23.1') dependencies = [ local_compiler, diff --git a/Golden_Repo/n/nvompic/nvompic-2022a.eb b/Golden_Repo/n/nvompic/nvompic-2022a.eb index 9ae3a04dafc21b4b8b23412bb2bf0d3fd9fbc2e7..0ce2fff27926b37a98103fa2dbb36fd2bd418217 100644 --- a/Golden_Repo/n/nvompic/nvompic-2022a.eb +++ b/Golden_Repo/n/nvompic/nvompic-2022a.eb @@ -8,7 +8,7 @@ description = 'NVHPC based compiler toolchain, including OpenMPI for MPI support toolchain = SYSTEM -local_compiler = ('NVHPC', '22.11') +local_compiler = ('NVHPC', '23.1') dependencies = [ local_compiler, diff --git a/Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.11.eb b/Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-23.1.eb similarity index 97% rename from Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.11.eb rename to Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-23.1.eb index 40ed67dfed508275d69f8b49c83b2c6e551c8709..6bb054ba122071f808ba2a0f0f5f5faf57ed1b9b 100644 --- a/Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.11.eb +++ b/Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-23.1.eb @@ -4,7 +4,7 @@ version = '4.1.4' homepage = 'https://www.open-mpi.org/' description = """The Open MPI Project is an open source MPI-3 implementation.""" -toolchain = {'name': 'NVHPC', 'version': '22.11'} +toolchain = {'name': 'NVHPC', 'version': '23.1'} toolchainopts = {'pic': True} source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] diff --git a/Golden_Repo/p/psmpi/psmpi-5.7.0-1-NVHPC-22.11.eb b/Golden_Repo/p/psmpi/psmpi-5.7.0-1-NVHPC-23.1.eb similarity index 96% rename from Golden_Repo/p/psmpi/psmpi-5.7.0-1-NVHPC-22.11.eb rename to Golden_Repo/p/psmpi/psmpi-5.7.0-1-NVHPC-23.1.eb index 70c5404b67724cae1ef03be50ff593f2cbcec683..531aa376dfb1cc59f09e614d7e23a685451b12fa 100644 --- a/Golden_Repo/p/psmpi/psmpi-5.7.0-1-NVHPC-22.11.eb +++ b/Golden_Repo/p/psmpi/psmpi-5.7.0-1-NVHPC-23.1.eb @@ -7,7 +7,7 @@ based on MPICH v3. It provides extra low level communication libraries and integ various batch systems for tighter process control. """ -toolchain = {'name': 'NVHPC', 'version': '22.11'} +toolchain = {'name': 'NVHPC', 'version': '23.1'} sources = [SOURCE_TAR_GZ] source_urls = ['https://github.com/ParaStation/psmpi/archive/'] diff --git a/Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb b/Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-23.1.eb similarity index 96% rename from Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb rename to Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-23.1.eb index 7b3584281e90504462332b299909a7ee2ebc2c49..80f59623eaef02de8e8f4bece5e79ec5c11f6081 100644 --- a/Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb +++ b/Golden_Repo/p/psmpi/psmpi-5.8.0-1-NVHPC-23.1.eb @@ -7,7 +7,7 @@ based on MPICH v3. It provides extra low level communication libraries and integ various batch systems for tighter process control. """ -toolchain = {'name': 'NVHPC', 'version': '22.11'} +toolchain = {'name': 'NVHPC', 'version': '23.1'} sources = [SOURCE_TAR_GZ] source_urls = ['https://gitlab.jsc.fz-juelich.de/ParTec/psmpi/uploads/762714c8eec01fe59239a52798a70e1c/'] diff --git a/Overlays/hdfml_overlay/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.11.eb b/Overlays/hdfml_overlay/o/OpenMPI/OpenMPI-4.1.4-NVHPC-23.1.eb similarity index 97% rename from Overlays/hdfml_overlay/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.11.eb rename to Overlays/hdfml_overlay/o/OpenMPI/OpenMPI-4.1.4-NVHPC-23.1.eb index 348634fadade0b5685c82e83dfa1f8748a0e0d3b..894b648ec0ea3c94c8f2ff461c97be37bedae4d8 100644 --- a/Overlays/hdfml_overlay/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.11.eb +++ b/Overlays/hdfml_overlay/o/OpenMPI/OpenMPI-4.1.4-NVHPC-23.1.eb @@ -4,7 +4,7 @@ version = '4.1.4' homepage = 'https://www.open-mpi.org/' description = """The Open MPI Project is an open source MPI-3 implementation.""" -toolchain = {'name': 'NVHPC', 'version': '22.11'} +toolchain = {'name': 'NVHPC', 'version': '23.1'} toolchainopts = {'pic': True} source_urls = [ diff --git a/Overlays/hdfml_overlay/p/psmpi/psmpi-5.7.0-1-NVHPC-22.11.eb b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.7.0-1-NVHPC-23.1.eb similarity index 96% rename from Overlays/hdfml_overlay/p/psmpi/psmpi-5.7.0-1-NVHPC-22.11.eb rename to Overlays/hdfml_overlay/p/psmpi/psmpi-5.7.0-1-NVHPC-23.1.eb index 125606353501b4c3bb343cae4665845d849d3dfc..b06425298eec656f626de2d1f803aa44adb59902 100644 --- a/Overlays/hdfml_overlay/p/psmpi/psmpi-5.7.0-1-NVHPC-22.11.eb +++ b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.7.0-1-NVHPC-23.1.eb @@ -7,7 +7,7 @@ based on MPICH v3. It provides extra low level communication libraries and integ various batch systems for tighter process control. """ -toolchain = {'name': 'NVHPC', 'version': '22.11'} +toolchain = {'name': 'NVHPC', 'version': '23.1'} sources = [SOURCE_TAR_GZ] source_urls = ['https://github.com/ParaStation/psmpi/archive/'] diff --git a/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-23.1.eb similarity index 96% rename from Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb rename to Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-23.1.eb index 3ad1f7e18ab2003ce0e739013275f9219d200eb1..802ecc42b314a5d3c074c245557e4d58ab08fc15 100644 --- a/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-22.11.eb +++ b/Overlays/hdfml_overlay/p/psmpi/psmpi-5.8.0-1-NVHPC-23.1.eb @@ -7,7 +7,7 @@ based on MPICH v3. It provides extra low level communication libraries and integ various batch systems for tighter process control. """ -toolchain = {'name': 'NVHPC', 'version': '22.11'} +toolchain = {'name': 'NVHPC', 'version': '23.1'} sources = [SOURCE_TAR_GZ] source_urls = ['https://gitlab.jsc.fz-juelich.de/ParTec/psmpi/uploads/762714c8eec01fe59239a52798a70e1c/']