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 aeb4b29b2e2cf2879e83584cbd50e90b7d3d7f29..b0a0e54a02fb833d33317810e1d83aa663b41fa3 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 8245ffe0a2bd0e9be702557b716f37680be6dafa..285b2aece33a865564cc10b5ab64fe243ab6a47b 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 f604b1be544ec569f54632f9e4d48535ebe61f80..0000000000000000000000000000000000000000 --- 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 9e0f1dfd9d096827505b28010ffe0cf199d3da7d..0000000000000000000000000000000000000000 --- 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 fec4975f06c5de913a92d303453032d0522a4fd5..666d0ea218ab4b32c9ff23a8268a9d1ed606ade0 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 89ba7a729d6233146258ad37b6c7b639fd1f9f9f..0000000000000000000000000000000000000000 --- 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 8ebd256f541a6537878f5ae63806ef985143c678..0000000000000000000000000000000000000000 --- 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'