diff --git a/_service b/_service index f0d6155..69540ed 100644 --- a/_service +++ b/_service @@ -7,10 +7,11 @@ openmpi @PARENT_TAG@.@TAG_OFFSET@.%h v(.*) - v4.1.4 + \1 + ffb0adcdd677a02ab396145c40352f8189132b86 openmpi*.tar - zst + bz2 diff --git a/btl-openib-Add-VF-support-for-ConnectX-4-5-and-6.patch b/btl-openib-Add-VF-support-for-ConnectX-4-5-and-6.patch new file mode 100644 index 0000000..cc7db16 --- /dev/null +++ b/btl-openib-Add-VF-support-for-ConnectX-4-5-and-6.patch @@ -0,0 +1,39 @@ +commit 034e90d7efb94011d7018266586588801c3afdbc +Author: Nicolas Morey-Chaisemartin +Date: Tue Sep 13 15:48:03 2022 +0200 + + btl: openib: Add VF support for ConnectX 4, 5 and 6 + + Signed-off-by: Nicolas Morey-Chaisemartin + +diff --git opal/mca/btl/openib/mca-btl-openib-device-params.ini opal/mca/btl/openib/mca-btl-openib-device-params.ini +index c46c303a35d5..b9949de235b8 100644 +--- opal/mca/btl/openib/mca-btl-openib-device-params.ini ++++ opal/mca/btl/openib/mca-btl-openib-device-params.ini +@@ -174,7 +174,7 @@ max_inline_data = 256 + + [Mellanox ConnectX4] + vendor_id = 0x2c9,0x5ad,0x66a,0x8f1,0x1708,0x03ba,0x15b3,0x119f +-vendor_part_id = 4115,4117 ++vendor_part_id = 4115,4116,4117,4118 + use_eager_rdma = 1 + mtu = 4096 + max_inline_data = 256 +@@ -183,7 +183,7 @@ max_inline_data = 256 + + [Mellanox ConnectX5] + vendor_id = 0x2c9,0x5ad,0x66a,0x8f1,0x1708,0x03ba,0x15b3,0x119f +-vendor_part_id = 4119,4121 ++vendor_part_id = 4119,4120,4121,4122 + use_eager_rdma = 1 + mtu = 4096 + max_inline_data = 256 +@@ -192,7 +192,7 @@ max_inline_data = 256 + + [Mellanox ConnectX6] + vendor_id = 0x2c9,0x5ad,0x66a,0x8f1,0x1708,0x03ba,0x15b3,0x119f +-vendor_part_id = 4123 ++vendor_part_id = 4123,4124 + use_eager_rdma = 1 + mtu = 4096 + max_inline_data = 256 diff --git a/openmpi-4.1.4.0.ffb0adcdd6.tar.zst b/openmpi-4.1.4.0.ffb0adcdd6.tar.zst deleted file mode 100644 index 4320194..0000000 --- a/openmpi-4.1.4.0.ffb0adcdd6.tar.zst +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e65d803fcc2831496069b411db47b6d95fd8accfba2ad69768973592cb4efe58 -size 6500275 diff --git a/openmpi-4.1.4.0.ffb0adcdd677.tar.bz2 b/openmpi-4.1.4.0.ffb0adcdd677.tar.bz2 new file mode 100644 index 0000000..df316e7 --- /dev/null +++ b/openmpi-4.1.4.0.ffb0adcdd677.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8520146236aef42a3406e1a7943f1626305465719a65fd10c4ef176019f87f91 +size 6553451 diff --git a/openmpi4-rpmlintrc b/openmpi4-rpmlintrc index 446289f..e8b2f4c 100644 --- a/openmpi4-rpmlintrc +++ b/openmpi4-rpmlintrc @@ -6,3 +6,4 @@ addFilter("openmpi.*-devel.* shared-lib-calls-exit") addFilter("openmpi.*-libs.* rpath-in-buildconfig") addFilter("openmpi.*-libs.* shared-lib-calls-exit") addFilter("openmpi.*-libs.* useless-provides") +addFilter("libopenmpi.* shlib-policy-name-error") diff --git a/openmpi4.changes b/openmpi4.changes index 74f26bf..ae571cc 100644 --- a/openmpi4.changes +++ b/openmpi4.changes @@ -1,3 +1,19 @@ +------------------------------------------------------------------- +Fri Sep 23 10:24:16 UTC 2022 - Nicolas Morey-Chaisemartin + +- Replace btl-openib-Add-VF-support-for-ConnectX-5-and-6.patch + by btl-openib-Add-VF-support-for-ConnectX-4-5-and-6.patch to add ConnectX4 VF suppor + +------------------------------------------------------------------- +Thu Sep 8 09:32:41 UTC 2022 - Nicolas Morey-Chaisemartin + +- Enable libfabric on all arch +- Switch to external libevent for all flavors +- Switch to external hwloc and PMIx for HPC builds +- Update rpmlintrc file to ignore missing libname suffix in libopenmpi packages +- Add patch btl-openib-Add-VF-support-for-ConnectX-5-and-6.patch to support + ConnectX 5 and 6 VF + ------------------------------------------------------------------- Wed Aug 3 08:18:34 UTC 2022 - Dirk Müller diff --git a/openmpi4.spec b/openmpi4.spec index be0aecc..2d65c94 100644 --- a/openmpi4.spec +++ b/openmpi4.spec @@ -117,9 +117,14 @@ ExclusiveArch: do_not_build %global hpc_openmpi_dep_version %(VER=%m_f_ver; echo -n ${VER}) %global hpc_openmpi_dir openmpi%{hpc_openmpi_dep_version} %global hpc_openmpi_pack_version %{hpc_openmpi_dep_version} +%{bcond_without pmix} +%{bcond_without hwloc} +%else +%{bcond_with pmix} +%{bcond_with hwloc} %endif -%define git_ver .0.ffb0adcdd6 +%define git_ver .0.ffb0adcdd677 ############################################################################# # @@ -134,12 +139,13 @@ Summary: An implementation of MPI/SHMEM (Version %{m_f_ver}) License: BSD-3-Clause Group: Development/Libraries/Parallel URL: https://www.open-mpi.org/ -Source0: openmpi-%{version}%{git_ver}.tar.zst +Source0: openmpi-%{version}%{git_ver}.tar.bz2 Source2: openmpi4-rpmlintrc Source3: macros.hpc-openmpi Source4: mpivars.sh Source5: mpivars.csh Patch1: orted-mpir-add-version-to-shared-library.patch +Patch2: btl-openib-Add-VF-support-for-ConnectX-4-5-and-6.patch Provides: mpi BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf @@ -147,10 +153,13 @@ BuildRequires: automake BuildRequires: fdupes BuildRequires: flex BuildRequires: hostname +BuildRequires: libevent-devel +BuildRequires: libfabric-devel BuildRequires: libibumad-devel BuildRequires: libibverbs-devel BuildRequires: libtool -BuildRequires: zstd +# net-tools is required to run hostname +BuildRequires: net-tools %if 0%{?testsuite} BuildArch: noarch BuildRequires: %{package_name} = %{version} @@ -161,6 +170,12 @@ BuildRequires: libucp-devel BuildRequires: libucs-devel BuildRequires: libuct-devel %endif +%if %{with hwloc} +BuildRequires: hwloc-devel +%endif +%if %{with pmix} +BuildRequires: pmix-devel +%endif %if %{without hpc} BuildRequires: Modules BuildRequires: gcc-c++ @@ -181,7 +196,6 @@ Requires: lib%{package_name} = %{version} %ifarch %{ix86} x86_64 BuildRequires: infinipath-psm-devel -BuildRequires: libfabric-devel %endif %ifarch x86_64 @@ -360,9 +374,11 @@ Summary: Runtime configuration files for openMPI %{?with_hpc:HPC} version Group: Development/Libraries/Parallel Provides: openmpi-runtime-config = %{version} Conflicts: otherproviders(openmpi-runtime-config) +%if %{without pmix} # OpenMPI4 is PMIx enabled Provides: pmix-runtime-config = %{version} Conflicts: otherproviders(pmix-runtime-config) +%endif %description -n %{pname}%{m_f_ver}-config OpenMPI is an implementation of the Message Passing Interface, a @@ -399,6 +415,7 @@ echo without HPC %endif %setup -q -n openmpi-%{version}%{git_ver} %patch1 +%patch2 %if %{without hpc} cat > %{_sourcedir}/baselibs.conf <