From e767c75b7d1b38927b2f184eef9ba63478397388 Mon Sep 17 00:00:00 2001 From: Sebastian Achilles <s.achilles@fz-juelich.de> Date: Fri, 11 Nov 2022 11:26:04 +0100 Subject: [PATCH] add nvompic toolchain --- Golden_Repo/n/nvompic/nvompic-2022a.eb | 19 ++++++ .../o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.9.eb | 67 +++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 Golden_Repo/n/nvompic/nvompic-2022a.eb create mode 100644 Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.9.eb diff --git a/Golden_Repo/n/nvompic/nvompic-2022a.eb b/Golden_Repo/n/nvompic/nvompic-2022a.eb new file mode 100644 index 000000000..85a9b9a5a --- /dev/null +++ b/Golden_Repo/n/nvompic/nvompic-2022a.eb @@ -0,0 +1,19 @@ +easyblock = 'Toolchain' + +name = 'nvompic' +version = '2022a' + +homepage = '(none)' +description = 'NVHPC based compiler toolchain, including OpenMPI for MPI support.' + +toolchain = SYSTEM + +local_compiler = ('NVHPC', '22.9') + +dependencies = [ + local_compiler, + ('CUDA', '11.7', '', SYSTEM), + ('OpenMPI', '4.1.4', '', local_compiler), +] + +moduleclass = 'toolchain' diff --git a/Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.9.eb b/Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.9.eb new file mode 100644 index 000000000..5b3d0821b --- /dev/null +++ b/Golden_Repo/o/OpenMPI/OpenMPI-4.1.4-NVHPC-22.9.eb @@ -0,0 +1,67 @@ +name = 'OpenMPI' +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.9'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_BZ2] +patches = [ + 'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch', +] +checksums = [ + '92912e175fd1234368c8730c03f4996fe5942e7479bb1d10059405e7f2b3930d', # openmpi-4.1.4.tar.bz2 + # OpenMPI-4.1.1_opal-datatype-cuda-performance.patch + 'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e', +] + +osdependencies = [ + # needed for --with-verbs + ('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel'), + # needed for --with-pmix + ('pmix-devel'), +] + +builddependencies = [ + ('pkgconf', '1.8.0'), + ('Perl', '5.34.1'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('hwloc', '2.7.1'), + ('UCX', 'default'), + ('CUDA', '11.7', '', SYSTEM), + ('libevent', '2.1.12'), + ('PMIx', '3.2.3'), # We rely on this version since it is the newest supported by psmgmt + ('UCC', 'default'), +] + +# Update configure to include changes from the "internal-cuda" patch +# by running a subset of autogen.pl sufficient to achieve this +# without doing the full, long-running regeneration. +preconfigopts = ' && '.join([ + 'cd config', + 'autom4te --language=m4sh opal_get_version.m4sh -o opal_get_version.sh', + 'cd ..', + 'autoconf', + 'autoheader', + 'aclocal', + 'automake', + '' +]) + +configopts = '--without-orte ' +configopts += '--without-psm2 ' +configopts += '--disable-oshmem ' +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' + +moduleclass = 'mpi' -- GitLab