From 12f7ee4eee6821e65d9695504a2fdd5436069000 Mon Sep 17 00:00:00 2001
From: Sebastian Achilles <s.achilles@fz-juelich.de>
Date: Fri, 25 Jun 2021 16:09:00 +0200
Subject: [PATCH] update toolchain nvompic-2021.eb

---
 Custom_Toolchains/{nompi.py => nvompic.py}    |  7 +-
 Golden_Repo/README.md                         |  4 +-
 Golden_Repo/n/nompi/nompi-2020.1.eb           | 21 ------
 Golden_Repo/n/nompi/nompi-2020.eb             | 21 ------
 .../nompi-2021.eb => nvompic/nvompic-2021.eb} |  2 +-
 .../OpenMPI-4.1.0rc1-NVHPC-20.9-GCC-9.3.0.eb  | 68 -------------------
 .../OpenMPI-4.1.0rc1-NVHPC-21.1-GCC-9.3.0.eb  | 68 -------------------
 7 files changed, 6 insertions(+), 185 deletions(-)
 rename Custom_Toolchains/{nompi.py => nvompic.py} (87%)
 delete mode 100644 Golden_Repo/n/nompi/nompi-2020.1.eb
 delete mode 100644 Golden_Repo/n/nompi/nompi-2020.eb
 rename Golden_Repo/n/{nompi/nompi-2021.eb => nvompic/nvompic-2021.eb} (95%)
 delete mode 100644 Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-20.9-GCC-9.3.0.eb
 delete mode 100644 Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-21.1-GCC-9.3.0.eb

diff --git a/Custom_Toolchains/nompi.py b/Custom_Toolchains/nvompic.py
similarity index 87%
rename from Custom_Toolchains/nompi.py
rename to Custom_Toolchains/nvompic.py
index aeb4b29b2..b0a0e54a0 100644
--- a/Custom_Toolchains/nompi.py
+++ b/Custom_Toolchains/nvompic.py
@@ -24,9 +24,10 @@
 # along with EasyBuild.  If not, see <http://www.gnu.org/licenses/>.
 ##
 """
-EasyBuild support for nompi compiler toolchain (includes NVHPC and OpenMPI, and CUDA as dependency).
+EasyBuild support for nvompic compiler toolchain (includes NVHPC and OpenMPI, and CUDA as dependency).
 
 @author: Damian Alvarez (Forschungszentrum Juelich)
+@author: Sebastian Achilles (Forschungszentrum Juelich)
 """
 
 from easybuild.toolchains.nvhpc import NvhpcToolchain
@@ -37,7 +38,7 @@ from easybuild.toolchains.compiler.cuda import Cuda
 # Order matters!
 
 
-class Ompi(NvhpcToolchain, Cuda, OpenMPI):
+class NVompic(NvhpcToolchain, Cuda, OpenMPI):
     """Compiler toolchain with NVHPC and OpenMPI, with CUDA as dependency."""
-    NAME = 'nompi'
+    NAME = 'nvompic'
     SUBTOOLCHAIN = NvhpcToolchain.NAME
diff --git a/Golden_Repo/README.md b/Golden_Repo/README.md
index 8245ffe0a..285b2aece 100644
--- a/Golden_Repo/README.md
+++ b/Golden_Repo/README.md
@@ -25,8 +25,6 @@ The table below shows the details of the toolchains in the 2020 stage:
 | Toolchain name  |     Toolchain version     | Underlying GCC |     Compiler     |          MPI            |   CUDA   | Math libraries |  Includes software from   |
 |-----------------|---------------------------|----------------|------------------|-------------------------|----------|----------------|---------------------------|
 | gpsmpi          | 2020                      | 9.3.0          | GCC 9.3.0        | ParaStationMPI 5.4.X    | 11.0.X§  |                | GCCcore, GCC              |
-| nompi           | 2020                      | 9.3.0          | NVHPC 20.9       | OpenMPI 4.1.0rc1        | 11.0.X   |                | GCCcore, NVHPC            |
-| nompi           | 2020.1                    | 9.3.0          | NVHPC 21.1       | OpenMPI 4.1.0rc1        | 11.0.X   |                | GCCcore, NVHPC            |
 | npsmpic         | 2020                      | 9.3.0          | NVHPC 20.7       | ParaStationMPI 5.4.X    | 11.0.X   |                | GCCcore, NVHPC            |
 | npsmpic         | 2020.1                    | 9.3.0          | NVHPC 21.1       | ParaStationMPI 5.4.X    | 11.0.X   |                | GCCcore, NVHPC            |
 | ipsmpi          | 2020                      | 9.3.0          | Intel 2020.2.254 | ParaStationMPI 5.4.X    | 11.0.X§  |                | GCCcore, iccifort         |
@@ -35,7 +33,7 @@ The table below shows the details of the toolchains in the 2020 stage:
 | gompi           | 2020                      | 9.3.0          | GCC 9.3.0        | OpenMPI 4.1.0rc1        | 11.0.X§  |                | GCCcore, GCC              |
 | iompi           | 2020                      | 9.3.0          | Intel 2020.2.254 | OpenMPI 4.1.0rc1        | 11.0.X§  |                | GCCcore, iccifort         |
 | gpsmpi          | 2021                      | 10.3.0         | GCC 10.3.0       | ParaStationMPI 5.4.X    | 11.3.X§  |                | GCCcore, GCC              |
-| nompi           | 2021                      | 10.3.          | NVHPC 21.5       | OpenMPI 4.1.1           | 11.3.X   |                | GCCcore, NVHPC            |
+| nvompic         | 2021                      | 10.3.0         | NVHPC 21.5       | OpenMPI 4.1.1           | 11.3.X   |                | GCCcore, NVHPC            |
 | npsmpic         | 2021                      | 10.3.0         | NVHPC 21.5       | ParaStationMPI 5.4.X    | 11.3.X   |                | GCCcore, NVHPC            |
 | ipsmpi          | 2021                      | 10.3.0         | Intel 2021.2.0   | ParaStationMPI 5.4.X    | 11.3.X§  |                | GCCcore, intel-compilers  |
 | iimpi           | 2021                      | 10.3.0         | Intel 2021.2.0   | Intel MPI 2021.2.0      |          |                | GCCcore, intel-compilers  |
diff --git a/Golden_Repo/n/nompi/nompi-2020.1.eb b/Golden_Repo/n/nompi/nompi-2020.1.eb
deleted file mode 100644
index f604b1be5..000000000
--- a/Golden_Repo/n/nompi/nompi-2020.1.eb
+++ /dev/null
@@ -1,21 +0,0 @@
-easyblock = 'Toolchain'
-
-name = 'nompi'
-version = '2020.1'
-
-homepage = '(none)'
-description = 'NVHPC based compiler toolchain, including OpenMPI for MPI support.'
-
-site_contacts = 'sc@fz-juelich.de'
-
-toolchain = SYSTEM
-
-local_compiler = ('NVHPC', '21.1-GCC-9.3.0')
-
-dependencies = [
-    local_compiler,
-    ('CUDA', '11.0', '', SYSTEM),
-    ('OpenMPI', '4.1.0rc1', '', local_compiler),
-]
-
-moduleclass = 'toolchain'
diff --git a/Golden_Repo/n/nompi/nompi-2020.eb b/Golden_Repo/n/nompi/nompi-2020.eb
deleted file mode 100644
index 9e0f1dfd9..000000000
--- a/Golden_Repo/n/nompi/nompi-2020.eb
+++ /dev/null
@@ -1,21 +0,0 @@
-easyblock = 'Toolchain'
-
-name = 'nompi'
-version = '2020'
-
-homepage = '(none)'
-description = 'NVHPC based compiler toolchain, including OpenMPI for MPI support.'
-
-site_contacts = 'sc@fz-juelich.de'
-
-toolchain = SYSTEM
-
-local_compiler = ('NVHPC', '20.9-GCC-9.3.0')
-
-dependencies = [
-    local_compiler,
-    ('CUDA', '11.0', '', SYSTEM),
-    ('OpenMPI', '4.1.0rc1', '', local_compiler),
-]
-
-moduleclass = 'toolchain'
diff --git a/Golden_Repo/n/nompi/nompi-2021.eb b/Golden_Repo/n/nvompic/nvompic-2021.eb
similarity index 95%
rename from Golden_Repo/n/nompi/nompi-2021.eb
rename to Golden_Repo/n/nvompic/nvompic-2021.eb
index fec4975f0..666d0ea21 100644
--- a/Golden_Repo/n/nompi/nompi-2021.eb
+++ b/Golden_Repo/n/nvompic/nvompic-2021.eb
@@ -1,6 +1,6 @@
 easyblock = 'Toolchain'
 
-name = 'nompi'
+name = 'nvompic'
 version = '2021'
 
 homepage = '(none)'
diff --git a/Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-20.9-GCC-9.3.0.eb b/Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-20.9-GCC-9.3.0.eb
deleted file mode 100644
index 89ba7a729..000000000
--- a/Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-20.9-GCC-9.3.0.eb
+++ /dev/null
@@ -1,68 +0,0 @@
-easyblock = 'ConfigureMake'
-
-name = 'OpenMPI'
-version = '4.1.0rc1'
-
-homepage = 'http://www.open-mpi.org/'
-description = """The Open MPI Project is an open source MPI-3 implementation."""
-
-site_contacts = 'sc@fz-juelich.de'
-
-toolchain = {'name': 'NVHPC', 'version': '20.9-GCC-9.3.0'}
-toolchainopts = {'pic': True}
-
-source_urls = ['http://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
-sources = [SOURCELOWER_TAR_GZ]
-
-osdependencies = [
-    # needed for --with-verbs
-    ('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel'),
-    # needed for --with-pmix
-    ('pmix-devel'),
-]
-
-builddependencies = [
-    ('Autotools', '20200321'),
-]
-
-dependencies = [
-    ('zlib', '1.2.11'),
-    ('hwloc', '2.2.0'),
-    ('UCX', '1.8.1', '', SYSTEM),
-    ('CUDA', '11.0', '', SYSTEM),
-    ('libevent', '2.1.12'),
-]
-
-configopts = '--enable-shared '
-configopts += '--with-hwloc=$EBROOTHWLOC '  # hwloc support
-configopts += '--with-ucx=$EBROOTUCX '
-configopts += '--with-verbs '
-configopts += '--with-libevent=$EBROOTLIBEVENT '
-configopts += '--without-orte '
-configopts += '--without-psm2 '
-configopts += '--disable-oshmem '
-configopts += '--with-cuda=$EBROOTCUDA '
-configopts += '--with-ime=/opt/ddn/ime '
-configopts += '--with-gpfs '
-
-# to enable SLURM integration (site-specific)
-configopts += '--with-slurm --with-pmix=external --with-libevent=external --with-ompi-pmix-rte'
-
-local_libs = ["mpi_mpifh", "mpi", "ompitrace", "open-pal", "open-rte"]
-sanity_check_paths = {
-    'files': ["bin/%s" % local_binfile for local_binfile in ["ompi_info", "opal_wrapper"]] +
-             ["lib/lib%s.%s" % (local_libfile, SHLIB_EXT) for local_libfile in local_libs] +
-             ["include/%s.h" % x for x in ["mpi-ext", "mpif-config", "mpif", "mpi", "mpi_portable_platform"]],
-    'dirs': [],
-}
-
-# Add a family for our naming scheme
-modluafooter = '''
-family("mpi")
-add_property("arch","gpu")
-if not ( isloaded("mpi-settings") ) then
-    load("mpi-settings")
-end
-'''
-
-moduleclass = 'mpi'
diff --git a/Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-21.1-GCC-9.3.0.eb b/Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-21.1-GCC-9.3.0.eb
deleted file mode 100644
index 8ebd256f5..000000000
--- a/Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-21.1-GCC-9.3.0.eb
+++ /dev/null
@@ -1,68 +0,0 @@
-easyblock = 'ConfigureMake'
-
-name = 'OpenMPI'
-version = '4.1.0rc1'
-
-homepage = 'http://www.open-mpi.org/'
-description = """The Open MPI Project is an open source MPI-3 implementation."""
-
-site_contacts = 'sc@fz-juelich.de'
-
-toolchain = {'name': 'NVHPC', 'version': '21.1-GCC-9.3.0'}
-toolchainopts = {'pic': True}
-
-source_urls = ['http://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
-sources = [SOURCELOWER_TAR_GZ]
-
-osdependencies = [
-    # needed for --with-verbs
-    ('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel'),
-    # needed for --with-pmix
-    ('pmix-devel'),
-]
-
-builddependencies = [
-    ('Autotools', '20200321'),
-]
-
-dependencies = [
-    ('zlib', '1.2.11'),
-    ('hwloc', '2.2.0'),
-    ('UCX', '1.8.1', '', SYSTEM),
-    ('CUDA', '11.0', '', SYSTEM),
-    ('libevent', '2.1.12'),
-]
-
-configopts = '--enable-shared '
-configopts += '--with-hwloc=$EBROOTHWLOC '  # hwloc support
-configopts += '--with-ucx=$EBROOTUCX '
-configopts += '--with-verbs '
-configopts += '--with-libevent=$EBROOTLIBEVENT '
-configopts += '--without-orte '
-configopts += '--without-psm2 '
-configopts += '--disable-oshmem '
-configopts += '--with-cuda=$EBROOTCUDA '
-configopts += '--with-ime=/opt/ddn/ime '
-configopts += '--with-gpfs '
-
-# to enable SLURM integration (site-specific)
-configopts += '--with-slurm --with-pmix=external --with-libevent=external --with-ompi-pmix-rte'
-
-local_libs = ["mpi_mpifh", "mpi", "ompitrace", "open-pal", "open-rte"]
-sanity_check_paths = {
-    'files': ["bin/%s" % local_binfile for local_binfile in ["ompi_info", "opal_wrapper"]] +
-             ["lib/lib%s.%s" % (local_libfile, SHLIB_EXT) for local_libfile in local_libs] +
-             ["include/%s.h" % x for x in ["mpi-ext", "mpif-config", "mpif", "mpi", "mpi_portable_platform"]],
-    'dirs': [],
-}
-
-# Add a family for our naming scheme
-modluafooter = '''
-family("mpi")
-add_property("arch","gpu")
-if not ( isloaded("mpi-settings") ) then
-    load("mpi-settings")
-end
-'''
-
-moduleclass = 'mpi'
-- 
GitLab