From 4c4a5b2c94082069be067ef03324d0cd88a97871 Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Mon, 25 Feb 2019 12:39:37 +0200 Subject: [PATCH 01/13] HPCX: add configs to build OSS part of HPCX --- .../h/HPCX/HPCX-2.3.0-foss-2018b.eb | 18 ++++++++ .../h/HPCX/HPCX_OMPI-4.0.0-foss-2018b.eb | 35 ++++++++++++++++ .../h/HPCX/HPCX_UCX-1.5.0-foss-2018b.eb | 42 +++++++++++++++++++ 3 files changed, 95 insertions(+) create mode 100644 easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb create mode 100644 easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.0-foss-2018b.eb create mode 100644 easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0-foss-2018b.eb diff --git a/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb new file mode 100644 index 00000000000..1b3a0e2db7b --- /dev/null +++ b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb @@ -0,0 +1,18 @@ +easyblock = 'Bundle' + +name = 'HPCX' +version = '2.3.0' + +homepage = 'http://www.mellanox.com/page/products_dyn?product_family=189&mtag=hpc-x' +description = """The Mellanox HPC-X Toolkit +is a comprehensive MPI and SHMEM/PGAS software suite +for high performance computing environments""" + +toolchain = {'name': 'foss', 'version': '2018b'} + +dependencies = [ + ('HPCX_UCX', '1.5.0'), + ('HPCX_OMPI', '4.0.0') +] + +moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.0-foss-2018b.eb b/easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.0-foss-2018b.eb new file mode 100644 index 00000000000..d3d711a25e4 --- /dev/null +++ b/easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.0-foss-2018b.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'HPCX_OMPI' +version = '4.0.0' + +homepage = 'http://www.open-mpi.org/' +description = """Mellanox flavored Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'foss', 'version': '2018b'} + +source_urls = ['https://download.open-mpi.org/release/open-mpi/v4.0'] +sources = ['openmpi-4.0.0.tar.gz'] +checksums = ['36f10daa3f1b1d37530f686bf7f70966b2a13c0bc6e2e05aebc7e85e3d21b10d'] + +# needed for --with-verbs +osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')] + +dependencies = [ + ('zlib', '1.2.11'), + ('HPCX_UCX', '1.5.0') +] + +configopts = '--with-libevent=internal --enable-mpi1-compatibility ' +configopts = '--with-slurm --with-platform=contrib/platform/mellanox/optimized ' +configopts += '--with-ucx=$EBROOTUCX ' + +libs = ["mpi_mpifh", "mpi", "ompitrace", "open-pal", "open-rte"] +sanity_check_paths = { + 'files': ["bin/%s" % binfile for binfile in ["ompi_info", "opal_wrapper", "orterun"]] + + ["lib/lib%s.%s" % (libfile, SHLIB_EXT) for libfile in libs] + + ["include/%s.h" % x for x in ["mpi-ext", "mpif-config", "mpif", "mpi", "mpi_portable_platform"]], + 'dirs': [], +} + +moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0-foss-2018b.eb b/easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0-foss-2018b.eb new file mode 100644 index 00000000000..d3c4be5409a --- /dev/null +++ b/easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0-foss-2018b.eb @@ -0,0 +1,42 @@ +# Note: +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +easyblock = 'ConfigureMake' + +name = 'HPCX_UCX' +version = '1.5.0' + +homepage = 'http://www.openucx.org/' +description = """Unified Communication X +An open-source production grade communication framework for data centric +and high-performance applications +""" + +toolchain = {'name': 'foss', 'version': '2018b'} + +source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] +sources = ['ucx-%(version)s.tar.gz'] +checksums = ['84f6e4fa5740afebb9b1c8bb405c07206e58c56f83120dcfcd8dc89e4b7d7458'] + +builddependencies = [ + ('binutils', '2.30'), + ('pkg-config', '0.29.2'), +] + +osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')] + +dependencies = [ + ('numactl', '2.0.11'), +] + +configopts = '--enable-optimizations --enable-optimizations --disable-logging ' +configopts += '--disable-debug --disable-assertions --disable-params-check ' +configopts += '--without-java --disable-doxygen-doc ' + +buildopts = 'V=1' + +sanity_check_paths = { + 'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'], + 'dirs': ['include', 'lib', 'share'] +} + +moduleclass = 'mpi' From 0f14bf47ea3717e58295b3b5aeeba38343b0fb4a Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Thu, 28 Feb 2019 10:47:27 +0200 Subject: [PATCH 02/13] HPCX: update configs to match HPCX v2.3 --- .../easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb | 4 ++-- ...oss-2018b.eb => HPCX_OMPI-4.0.x-foss-2018b.eb} | 15 +++++++++++---- ...s-2018b.eb => HPCX_UCX-1.5.0rc1-foss-2018b.eb} | 8 ++++---- 3 files changed, 17 insertions(+), 10 deletions(-) rename easybuild/easyconfigs/h/HPCX/{HPCX_OMPI-4.0.0-foss-2018b.eb => HPCX_OMPI-4.0.x-foss-2018b.eb} (76%) rename easybuild/easyconfigs/h/HPCX/{HPCX_UCX-1.5.0-foss-2018b.eb => HPCX_UCX-1.5.0rc1-foss-2018b.eb} (87%) diff --git a/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb index 1b3a0e2db7b..cb19dcd1485 100644 --- a/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb +++ b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb @@ -11,8 +11,8 @@ for high performance computing environments""" toolchain = {'name': 'foss', 'version': '2018b'} dependencies = [ - ('HPCX_UCX', '1.5.0'), - ('HPCX_OMPI', '4.0.0') + ('HPCX_UCX', '1.5.0rc1'), + ('HPCX_OMPI', '4.0.x') ] moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.0-foss-2018b.eb b/easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.x-foss-2018b.eb similarity index 76% rename from easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.0-foss-2018b.eb rename to easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.x-foss-2018b.eb index d3d711a25e4..3253a2e30b5 100644 --- a/easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.0-foss-2018b.eb +++ b/easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.x-foss-2018b.eb @@ -1,7 +1,7 @@ easyblock = 'ConfigureMake' name = 'HPCX_OMPI' -version = '4.0.0' +version = '4.0.x' homepage = 'http://www.open-mpi.org/' description = """Mellanox flavored Open MPI Project is an open source MPI-3 implementation.""" @@ -9,15 +9,22 @@ description = """Mellanox flavored Open MPI Project is an open source MPI-3 impl toolchain = {'name': 'foss', 'version': '2018b'} source_urls = ['https://download.open-mpi.org/release/open-mpi/v4.0'] -sources = ['openmpi-4.0.0.tar.gz'] -checksums = ['36f10daa3f1b1d37530f686bf7f70966b2a13c0bc6e2e05aebc7e85e3d21b10d'] +sources = [{ + 'filename': 'openmpi-4.0.x.tar.gz', + 'git_config': { + 'url': 'https://github.com/open-mpi', + 'repo_name': 'ompi', + 'commit': '03cf3e4', + }, +}] +checksums = ['5986f36b91a0b9ffc7d0c7d5f11a832000d0c7bef1d26c11a476dc98bdf3cc09'] # needed for --with-verbs osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')] dependencies = [ ('zlib', '1.2.11'), - ('HPCX_UCX', '1.5.0') + ('HPCX_UCX', '1.5.0rc1') ] configopts = '--with-libevent=internal --enable-mpi1-compatibility ' diff --git a/easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0-foss-2018b.eb b/easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0rc1-foss-2018b.eb similarity index 87% rename from easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0-foss-2018b.eb rename to easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0rc1-foss-2018b.eb index d3c4be5409a..cc49e2bc6e6 100644 --- a/easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0-foss-2018b.eb +++ b/easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0rc1-foss-2018b.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'HPCX_UCX' -version = '1.5.0' +version = '1.5.0rc1' homepage = 'http://www.openucx.org/' description = """Unified Communication X @@ -13,9 +13,9 @@ and high-performance applications toolchain = {'name': 'foss', 'version': '2018b'} -source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s'] -sources = ['ucx-%(version)s.tar.gz'] -checksums = ['84f6e4fa5740afebb9b1c8bb405c07206e58c56f83120dcfcd8dc89e4b7d7458'] +source_urls = ['https://github.com/openucx/ucx/releases/download/v1.5.0-rc1'] +sources = ['ucx-1.5.0.tar.gz'] +checksums = ['ae5dfa59c54627a11d8cb1c7fdd0b0319e5e8633a6aebd42a07e54a6a4a32181'] builddependencies = [ ('binutils', '2.30'), From ea8246ea4dfb5cec01551f0a34fa23be59bd4c25 Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Wed, 20 Mar 2019 04:11:41 +0200 Subject: [PATCH 03/13] UCX: rename HPCX_UCX into UCX-hpcx --- .../UCX/UCX-1.5.0rc1-GCCcore-6.4.0-hpcx.eb} | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) rename easybuild/easyconfigs/{h/HPCX/HPCX_UCX-1.5.0rc1-foss-2018b.eb => u/UCX/UCX-1.5.0rc1-GCCcore-6.4.0-hpcx.eb} (88%) diff --git a/easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0rc1-foss-2018b.eb b/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-6.4.0-hpcx.eb similarity index 88% rename from easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0rc1-foss-2018b.eb rename to easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-6.4.0-hpcx.eb index cc49e2bc6e6..a83323cd347 100644 --- a/easybuild/easyconfigs/h/HPCX/HPCX_UCX-1.5.0rc1-foss-2018b.eb +++ b/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-6.4.0-hpcx.eb @@ -2,8 +2,9 @@ # This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild easyblock = 'ConfigureMake' -name = 'HPCX_UCX' +name = 'UCX' version = '1.5.0rc1' +versionsuffix = '-hpcx' homepage = 'http://www.openucx.org/' description = """Unified Communication X @@ -11,14 +12,15 @@ An open-source production grade communication framework for data centric and high-performance applications """ -toolchain = {'name': 'foss', 'version': '2018b'} +toolchain = {'name': 'GCCcore', 'version': '6.4.0'} +toolchainopts = {'pic': True} source_urls = ['https://github.com/openucx/ucx/releases/download/v1.5.0-rc1'] sources = ['ucx-1.5.0.tar.gz'] checksums = ['ae5dfa59c54627a11d8cb1c7fdd0b0319e5e8633a6aebd42a07e54a6a4a32181'] builddependencies = [ - ('binutils', '2.30'), + ('binutils', '2.28'), ('pkg-config', '0.29.2'), ] From add5016f8d5856742beb3d88de2a6a9f55d90367 Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Wed, 20 Mar 2019 11:10:37 +0200 Subject: [PATCH 04/13] OMPI: rename HPCX_OMPI into OpenMPI-hpcx --- .../OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb} | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) rename easybuild/easyconfigs/{h/HPCX/HPCX_OMPI-4.0.x-foss-2018b.eb => o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb} (81%) diff --git a/easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.x-foss-2018b.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb similarity index 81% rename from easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.x-foss-2018b.eb rename to easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb index 3253a2e30b5..3882f8911fa 100644 --- a/easybuild/easyconfigs/h/HPCX/HPCX_OMPI-4.0.x-foss-2018b.eb +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb @@ -1,14 +1,14 @@ easyblock = 'ConfigureMake' -name = 'HPCX_OMPI' +name = 'OpenMPI' version = '4.0.x' +versionsuffix = '-hpcx' homepage = 'http://www.open-mpi.org/' description = """Mellanox flavored Open MPI Project is an open source MPI-3 implementation.""" -toolchain = {'name': 'foss', 'version': '2018b'} +toolchain = {'name': 'GCC', 'version': '8.2.0-2.31.1'} -source_urls = ['https://download.open-mpi.org/release/open-mpi/v4.0'] sources = [{ 'filename': 'openmpi-4.0.x.tar.gz', 'git_config': { @@ -17,14 +17,14 @@ sources = [{ 'commit': '03cf3e4', }, }] -checksums = ['5986f36b91a0b9ffc7d0c7d5f11a832000d0c7bef1d26c11a476dc98bdf3cc09'] +checksums = ['ef53605823b01499e09844a610614a555724603c72a1bb9a5ca59b35389f67ec'] # needed for --with-verbs osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')] dependencies = [ ('zlib', '1.2.11'), - ('HPCX_UCX', '1.5.0rc1') + ('UCX', '1.5.0rc1', '-hpcx', ('GCCcore', '6.4.0')) ] configopts = '--with-libevent=internal --enable-mpi1-compatibility ' From 6eab44fabf3c378d90fd1851b55a67abe08a842f Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Wed, 20 Mar 2019 11:51:07 +0200 Subject: [PATCH 05/13] UCX: upgrade to GCCcore 8.2.0 --- ...ore-6.4.0-hpcx.eb => UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename easybuild/easyconfigs/u/UCX/{UCX-1.5.0rc1-GCCcore-6.4.0-hpcx.eb => UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb} (91%) diff --git a/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-6.4.0-hpcx.eb b/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb similarity index 91% rename from easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-6.4.0-hpcx.eb rename to easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb index a83323cd347..b87360810c0 100644 --- a/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-6.4.0-hpcx.eb +++ b/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb @@ -12,7 +12,7 @@ An open-source production grade communication framework for data centric and high-performance applications """ -toolchain = {'name': 'GCCcore', 'version': '6.4.0'} +toolchain = {'name': 'GCCcore', 'version': '8.2.0'} toolchainopts = {'pic': True} source_urls = ['https://github.com/openucx/ucx/releases/download/v1.5.0-rc1'] @@ -20,14 +20,14 @@ sources = ['ucx-1.5.0.tar.gz'] checksums = ['ae5dfa59c54627a11d8cb1c7fdd0b0319e5e8633a6aebd42a07e54a6a4a32181'] builddependencies = [ - ('binutils', '2.28'), + ('binutils', '2.31.1'), ('pkg-config', '0.29.2'), ] osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')] dependencies = [ - ('numactl', '2.0.11'), + ('numactl', '2.0.12'), ] configopts = '--enable-optimizations --enable-optimizations --disable-logging ' From 10f599e5741eb248cbe8d4c3815a0712224d6567 Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Wed, 20 Mar 2019 11:51:50 +0200 Subject: [PATCH 06/13] OMPI: add preconfigure action --- .../o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb index 3882f8911fa..9e532ba4c71 100644 --- a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb @@ -24,9 +24,10 @@ osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')] dependencies = [ ('zlib', '1.2.11'), - ('UCX', '1.5.0rc1', '-hpcx', ('GCCcore', '6.4.0')) + ('UCX', '1.5.0rc1', '-hpcx', ('GCCcore', '8.2.0')) ] +preconfigopts = "./autogen.pl && " configopts = '--with-libevent=internal --enable-mpi1-compatibility ' configopts = '--with-slurm --with-platform=contrib/platform/mellanox/optimized ' configopts += '--with-ucx=$EBROOTUCX ' From 2e2d01b8d60d83dfabebdce2f68a82e02e671cba Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Wed, 20 Mar 2019 11:55:28 +0200 Subject: [PATCH 07/13] HPCX: update toolchain and dependencies --- ...X-2.3.0-foss-2018b.eb => HPCX-2.3.0-GCC-8.2.0-2.31.1.eb} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename easybuild/easyconfigs/h/HPCX/{HPCX-2.3.0-foss-2018b.eb => HPCX-2.3.0-GCC-8.2.0-2.31.1.eb} (65%) diff --git a/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb similarity index 65% rename from easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb rename to easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb index cb19dcd1485..34a544c36bf 100644 --- a/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-foss-2018b.eb +++ b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb @@ -8,11 +8,11 @@ description = """The Mellanox HPC-X Toolkit is a comprehensive MPI and SHMEM/PGAS software suite for high performance computing environments""" -toolchain = {'name': 'foss', 'version': '2018b'} +toolchain = {'name': 'GCC', 'version': '8.2.0-2.31.1'} dependencies = [ - ('HPCX_UCX', '1.5.0rc1'), - ('HPCX_OMPI', '4.0.x') + ('UCX', '1.5.0rc1', '-hpcx', ('GCCcore', '8.2.0')), + ('OpenMPI', '4.0.x', '-hpcx', ('GCC', '8.2.0-2.31.1')) ] moduleclass = 'mpi' From 59751ada02be12632ea4c4a8496cecc979ad8923 Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Thu, 21 Mar 2019 06:28:45 +0200 Subject: [PATCH 08/13] OMPI: fix version --- .../o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb index 9e532ba4c71..10b5cb4d487 100644 --- a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb @@ -1,7 +1,7 @@ easyblock = 'ConfigureMake' name = 'OpenMPI' -version = '4.0.x' +version = '4.0.0' versionsuffix = '-hpcx' homepage = 'http://www.open-mpi.org/' From c6c236317c1bdb6c344fa0320cfd49ace2e04a7c Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Thu, 21 Mar 2019 10:57:22 +0200 Subject: [PATCH 09/13] OMPI: fix version --- ....0-2.31.1-hpcx.eb => OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename easybuild/easyconfigs/o/OpenMPI/{OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb => OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb} (98%) diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb similarity index 98% rename from easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb rename to easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb index 10b5cb4d487..9e532ba4c71 100644 --- a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb @@ -1,7 +1,7 @@ easyblock = 'ConfigureMake' name = 'OpenMPI' -version = '4.0.0' +version = '4.0.x' versionsuffix = '-hpcx' homepage = 'http://www.open-mpi.org/' From 549b953d2d6b3a9bb12bd76a0577ab9174dfc77d Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Thu, 21 Mar 2019 11:19:49 +0200 Subject: [PATCH 10/13] Address review comments --- easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb | 4 ++-- .../o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb index 34a544c36bf..03cca0222b8 100644 --- a/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb +++ b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb @@ -11,8 +11,8 @@ for high performance computing environments""" toolchain = {'name': 'GCC', 'version': '8.2.0-2.31.1'} dependencies = [ - ('UCX', '1.5.0rc1', '-hpcx', ('GCCcore', '8.2.0')), - ('OpenMPI', '4.0.x', '-hpcx', ('GCC', '8.2.0-2.31.1')) + ('UCX', '1.5.0rc1', '-hpcx'), + ('OpenMPI', '4.0.x', '-hpcx') ] moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb index 9e532ba4c71..5b2066cbb05 100644 --- a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb @@ -24,7 +24,7 @@ osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')] dependencies = [ ('zlib', '1.2.11'), - ('UCX', '1.5.0rc1', '-hpcx', ('GCCcore', '8.2.0')) + ('UCX', '1.5.0rc1', '-hpcx') ] preconfigopts = "./autogen.pl && " From 25c144e1815bc047d09d79bdccc6f018a40d8e39 Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Sun, 24 Mar 2019 08:58:41 +0200 Subject: [PATCH 11/13] UCX: download to unambiguous file name --- .../easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb b/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb index b87360810c0..97d890f4a5b 100644 --- a/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb +++ b/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb @@ -15,8 +15,11 @@ and high-performance applications toolchain = {'name': 'GCCcore', 'version': '8.2.0'} toolchainopts = {'pic': True} +sources = [{ + 'filename': 'ucx-1.5.0rc1.tar.gz', + 'download_filename': 'ucx-1.5.0.tar.gz' +}] source_urls = ['https://github.com/openucx/ucx/releases/download/v1.5.0-rc1'] -sources = ['ucx-1.5.0.tar.gz'] checksums = ['ae5dfa59c54627a11d8cb1c7fdd0b0319e5e8633a6aebd42a07e54a6a4a32181'] builddependencies = [ From d14d0caf5e1504d1ef64d1a9531d4b283bad0c8c Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Tue, 26 Mar 2019 08:31:11 +0200 Subject: [PATCH 12/13] Address review comments --- easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb b/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb index 97d890f4a5b..4c8fe8f4c5b 100644 --- a/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb +++ b/easybuild/easyconfigs/u/UCX/UCX-1.5.0rc1-GCCcore-8.2.0-hpcx.eb @@ -15,11 +15,11 @@ and high-performance applications toolchain = {'name': 'GCCcore', 'version': '8.2.0'} toolchainopts = {'pic': True} +source_urls = ['https://github.com/openucx/ucx/releases/download/v1.5.0-rc1'] sources = [{ 'filename': 'ucx-1.5.0rc1.tar.gz', 'download_filename': 'ucx-1.5.0.tar.gz' }] -source_urls = ['https://github.com/openucx/ucx/releases/download/v1.5.0-rc1'] checksums = ['ae5dfa59c54627a11d8cb1c7fdd0b0319e5e8633a6aebd42a07e54a6a4a32181'] builddependencies = [ From f862589852b7e4670dd5a63ceb4a51c692665fa5 Mon Sep 17 00:00:00 2001 From: Andrey Maslennikov Date: Sun, 31 Mar 2019 13:01:47 +0300 Subject: [PATCH 13/13] Use official OMPI release --- .../h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb | 2 +- ....eb => OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb} | 15 ++++----------- 2 files changed, 5 insertions(+), 12 deletions(-) rename easybuild/easyconfigs/o/OpenMPI/{OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb => OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb} (76%) diff --git a/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb index 03cca0222b8..9149ad33f79 100644 --- a/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb +++ b/easybuild/easyconfigs/h/HPCX/HPCX-2.3.0-GCC-8.2.0-2.31.1.eb @@ -12,7 +12,7 @@ toolchain = {'name': 'GCC', 'version': '8.2.0-2.31.1'} dependencies = [ ('UCX', '1.5.0rc1', '-hpcx'), - ('OpenMPI', '4.0.x', '-hpcx') + ('OpenMPI', '4.0.0', '-hpcx') ] moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb similarity index 76% rename from easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb rename to easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb index 5b2066cbb05..892e9959bb1 100644 --- a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.x-GCC-8.2.0-2.31.1-hpcx.eb +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.0-GCC-8.2.0-2.31.1-hpcx.eb @@ -1,7 +1,7 @@ easyblock = 'ConfigureMake' name = 'OpenMPI' -version = '4.0.x' +version = '4.0.0' versionsuffix = '-hpcx' homepage = 'http://www.open-mpi.org/' @@ -9,15 +9,9 @@ description = """Mellanox flavored Open MPI Project is an open source MPI-3 impl toolchain = {'name': 'GCC', 'version': '8.2.0-2.31.1'} -sources = [{ - 'filename': 'openmpi-4.0.x.tar.gz', - 'git_config': { - 'url': 'https://github.com/open-mpi', - 'repo_name': 'ompi', - 'commit': '03cf3e4', - }, -}] -checksums = ['ef53605823b01499e09844a610614a555724603c72a1bb9a5ca59b35389f67ec'] +source_urls = ['http://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['36f10daa3f1b1d37530f686bf7f70966b2a13c0bc6e2e05aebc7e85e3d21b10d'] # needed for --with-verbs osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')] @@ -27,7 +21,6 @@ dependencies = [ ('UCX', '1.5.0rc1', '-hpcx') ] -preconfigopts = "./autogen.pl && " configopts = '--with-libevent=internal --enable-mpi1-compatibility ' configopts = '--with-slurm --with-platform=contrib/platform/mellanox/optimized ' configopts += '--with-ucx=$EBROOTUCX '