diff --git a/Golden_Repo/README.md b/Golden_Repo/README.md index fe6f3b095cbd172d83a46fc91957e0103cd95979..b933d9c770638e3ee4529f086d710d7fe6c7d7d5 100644 --- a/Golden_Repo/README.md +++ b/Golden_Repo/README.md @@ -12,6 +12,7 @@ The table below shows the details of the toolchains in the 2020 stage: |----------------|---------------------------|----------------|------------------|-------------------------|----------|----------------|---------------------------| | GCC | 9.3.0 | 9.3.0 | GCC 9.3.0 | | | | GCCcore | | NVHPC | 20.7-GCC-9.3.0 | 9.3.0 | NVHPC 20.7 | | 11.0.X§ | | GCCcore | +| NVHPC | 20.9-GCC-9.3.0 | 9.3.0 | NVHPC 20.9 | | 11.0.X§ | | GCCcore | | NVHPC | 21.1-GCC-9.3.0 | 9.3.0 | NVHPC 21.1 | | 11.0.X§ | | GCCcore | | iccifort | 2020.2.254-GCC-9.3.0 | 9.3.0 | Intel 2020.2.254 | | | | GCCcore | @@ -20,7 +21,9 @@ 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 | -| npsmpic | 2020 | 9.3.0 | NVHPC 20.7 | ParaStationMPI 5.4.X | 11.0.X | | GCCcore, NVHPC | +| nompi | 2020 | 9.3.0 | NVHPC 20.9 | ParaStationMPI 5.4.X | 11.0.X | | GCCcore, NVHPC | +| nompi | 2020.1 | 9.3.0 | NVHPC 21.1 | ParaStationMPI 5.4.X | 11.0.X | | GCCcore, NVHPC | +| npsmpic | 2020 | 9.3.0 | NVHPC 20.9 | 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 | | ipsmpi | 2020-mt | 9.3.0 | Intel 2020.2.254 | ParaStationMPI 5.4.X MT | 11.0.X§ | | GCCcore, iccifort | diff --git a/Golden_Repo/n/nompi/nompi-2020.1.eb b/Golden_Repo/n/nompi/nompi-2020.1.eb new file mode 100644 index 0000000000000000000000000000000000000000..f604b1be544ec569f54632f9e4d48535ebe61f80 --- /dev/null +++ b/Golden_Repo/n/nompi/nompi-2020.1.eb @@ -0,0 +1,21 @@ +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 new file mode 100644 index 0000000000000000000000000000000000000000..9e0f1dfd9d096827505b28010ffe0cf199d3da7d --- /dev/null +++ b/Golden_Repo/n/nompi/nompi-2020.eb @@ -0,0 +1,21 @@ +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/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 new file mode 100644 index 0000000000000000000000000000000000000000..89ba7a729d6233146258ad37b6c7b639fd1f9f9f --- /dev/null +++ b/Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-20.9-GCC-9.3.0.eb @@ -0,0 +1,68 @@ +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 new file mode 100644 index 0000000000000000000000000000000000000000..8ebd256f541a6537878f5ae63806ef985143c678 --- /dev/null +++ b/Golden_Repo/o/OpenMPI/OpenMPI-4.1.0rc1-NVHPC-21.1-GCC-9.3.0.eb @@ -0,0 +1,68 @@ +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'