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