diff --git a/_service b/_service index e34b008..68a54bb 100644 --- a/_service +++ b/_service @@ -8,7 +8,7 @@ @PARENT_TAG@.@TAG_OFFSET@.%h v(.*) \1 - 9ac5471035b9066462506bc4d92be7a340a8058e + a8dd8708d8b6d1346328d7f4612d63b307c25653 openmpi*.tar diff --git a/openmpi-4.1.0.0.9ac5471035.tar.bz2 b/openmpi-4.1.0.0.9ac5471035.tar.bz2 deleted file mode 100644 index 3051b22..0000000 --- a/openmpi-4.1.0.0.9ac5471035.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c6b9013b8fc5788371477d68b8a3273781c36b57600b4957af705aa70dc0688e -size 6418922 diff --git a/openmpi-4.1.1.0.a8dd8708d8b6.tar.bz2 b/openmpi-4.1.1.0.a8dd8708d8b6.tar.bz2 new file mode 100644 index 0000000..32b28fb --- /dev/null +++ b/openmpi-4.1.1.0.a8dd8708d8b6.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52fb519d3b71c62223f33b1434d245b724b4c3b59c9824b983df26cebaf4413b +size 6461180 diff --git a/openmpi4.changes b/openmpi4.changes index b591b69..1e9ddbb 100644 --- a/openmpi4.changes +++ b/openmpi4.changes @@ -1,3 +1,75 @@ +------------------------------------------------------------------- +Wed Apr 28 11:08:54 UTC 2021 - Nicolas Morey-Chaisemartin + +- openmpi4 is now the default openmpi for releases > 15.3 +- Add orted-mpir-add-version-to-shared-library.patch to fix unversionned library +- Change RPM macros install path to %{_rpmmacrodir} + +------------------------------------------------------------------- +Wed Apr 28 09:24:33 UTC 2021 - Nicolas Morey-Chaisemartin + +- Update to version 4.1.1 + - Fix a number of datatype issues, including an issue with + improper handling of partial datatypes that could lead to + an unexpected application failure. + - Change UCX PML to not warn about MPI_Request leaks during + MPI_FINALIZE by default. The old behavior can be restored with + the mca_pml_ucx_request_leak_check MCA parameter. + - Reverted temporary solution that worked around launch issues in + SLURM v20.11.{0,1,2}. SchedMD encourages users to avoid these + versions and to upgrade to v20.11.3 or newer. + - Updated PMIx to v3.2.2. + - Disabled gcc built-in atomics by default on aarch64 platforms. + - Disabled UCX PML when UCX v1.8.0 is detected. UCX version 1.8.0 has a bug that + may cause data corruption when its TCP transport is used in conjunction with + the shared memory transport. UCX versions prior to v1.8.0 are not affected by + this issue. Thanks to @ksiazekm for reporting the issue. + - Fixed detection of available UCX transports/devices to better inform PML + prioritization. + - Fixed SLURM support to mark ORTE daemons as non-MPI tasks. + - Improved AVX detection to more accurately detect supported + platforms. Also improved the generated AVX code, and switched to + using word-based MCA params for the op/avx component (vs. numeric + big flags). + - Improved OFI compatibility support and fixed memory leaks in error + handling paths. + - Improved HAN collectives with support for Barrier and Scatter. Thanks + to @EmmanuelBRELLE for these changes and the relevant bug fixes. + - Fixed MPI debugger support (i.e., the MPIR_Breakpoint() symbol). + Thanks to @louisespellacy-arm for reporting the issue. + - Fixed ORTE bug that prevented debuggers from reading MPIR_Proctable. + - Removed PML uniformity check from the UCX PML to address performance + regression. + - Fixed MPI_Init_thread(3) statement about C++ binding and update + references about MPI_THREAD_MULTIPLE. Thanks to Andreas Lösel for + bringing the outdated docs to our attention. + - Added fence_nb to Flux PMIx support to address segmentation faults. + - Ensured progress of AIO requests in the POSIX FBTL component to + prevent exceeding maximum number of pending requests on MacOS. + - Used OPAL's mutli-thread support in the orted to leverage atomic + operations for object refcounting. + - Fixed segv when launching with static TCP ports. + - Fixed --debug-daemons mpirun CLI option. + - Fixed bug where mpirun did not honor --host in a managed job + allocation. + - Made a managed allocation filter a hostfile/hostlist. + - Fixed bug to marked a generalized request as pending once initiated. + - Fixed external PMIx v4.x check. + - Fixed OSHMEM build with `--enable-mem-debug`. + - Fixed a performance regression observed with older versions of GCC when + __ATOMIC_SEQ_CST is used. Thanks to @BiplabRaut for reporting the issue. + - Fixed buffer allocation bug in the binomial tree scatter algorithm when + non-contiguous datatypes are used. Thanks to @sadcat11 for reporting the issue. + - Fixed bugs related to the accumulate and atomics functionality in the + osc/rdma component. + - Fixed race condition in MPI group operations observed with + MPI_THREAD_MULTIPLE threading level. + - Fixed a deadlock in the TCP BTL's connection matching logic. + - Fixed pml/ob1 compilation error when CUDA support is enabled. + - Fixed a build issue with Lustre caused by unnecessary header includes. + - Fixed a build issue with IMB LSF workload manager. + - Fixed linker error with UCX SPML. + ------------------------------------------------------------------- Wed Mar 24 08:01:35 UTC 2021 - Egbert Eich diff --git a/openmpi4.spec b/openmpi4.spec index 3f2517b..f201e0c 100644 --- a/openmpi4.spec +++ b/openmpi4.spec @@ -42,8 +42,8 @@ # % define build_static_devel 1 %define pname openmpi -%define vers 4.1.0 -%define _vers 4_1_0 +%define vers 4.1.1 +%define _vers 4_1_1 %define m_f_ver 4 %bcond_with ringdisabled @@ -104,7 +104,11 @@ ExclusiveArch: do_not_build %endif # Detect whether we are the default openMPI implemantation or not +%if "%{flavor}" == "standard" && (%{suse_version} > 1500 || 0%{?sle_version} > 150300) +%define default_openmpi 1 +%else %define default_openmpi 0 +%endif %if %{with hpc} %{!?compiler_family:%global compiler_family gnu} @@ -115,7 +119,7 @@ ExclusiveArch: do_not_build %global hpc_openmpi_pack_version %{hpc_openmpi_dep_version} %endif -%define git_ver .0.9ac5471035 +%define git_ver .0.a8dd8708d8b6 ############################################################################# # @@ -135,6 +139,7 @@ Source2: openmpi4-rpmlintrc Source3: macros.hpc-openmpi Source4: mpivars.sh Source5: mpivars.csh +Patch1: orted-mpir-add-version-to-shared-library.patch Provides: mpi BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf @@ -393,6 +398,7 @@ echo with HPC echo without HPC %endif %setup -q -n openmpi-%{version}%{git_ver} +%patch1 %if %{without hpc} cat > %{_sourcedir}/baselibs.conf <%{buildroot}%{_sysconfdir}/rpm/macros.openmpi +mkdir -p %{buildroot}%{_rpmmacrodir} +cat <%{buildroot}%{_rpmmacrodir}/macros.openmpi # # openmpi # @@ -580,9 +586,9 @@ EOF sed -e "s/export/setenv/" -e "s/=/ /" \ %{buildroot}/%{mpi_bindir}/mpivars.sh > \ %{buildroot}/%{mpi_bindir}/mpivars.csh -mkdir -p %{buildroot}%{_sysconfdir}/rpm -mkdir -p %{buildroot}%{_sysconfdir}/rpm -cp %{S:3} %{buildroot}%{_sysconfdir}/rpm +mkdir -p %{buildroot}%{_rpmmacrodir} +mkdir -p %{buildroot}%{_rpmmacrodir} +cp %{S:3} %{buildroot}%{_rpmmacrodir} # Drop the files that should go into %{pname}-config as we only package them # in the non HPC build @@ -730,9 +736,9 @@ fi %files macros-devel %defattr(-,root,root,-) %if %{with hpc} -%config %{_sysconfdir}/rpm/macros.hpc-openmpi +%{_rpmmacrodir}/macros.hpc-openmpi %else -%config %{_sysconfdir}/rpm/macros.openmpi +%{_rpmmacrodir}/macros.openmpi %endif %if 0%{?build_static_devel} diff --git a/orted-mpir-add-version-to-shared-library.patch b/orted-mpir-add-version-to-shared-library.patch new file mode 100644 index 0000000..52ba5cb --- /dev/null +++ b/orted-mpir-add-version-to-shared-library.patch @@ -0,0 +1,22 @@ +commit bd2ceac4315c772e02cbb070e443d1acf2512da1 +Author: Andrew J. Hesford +Date: Thu Apr 29 15:13:23 2021 -0400 + + orted-mpir: add version to shared library + + Because orted-mpir is installed in the public library direrctory, it + should have a version. Assign the library libopen_rte_so_version to be + consistent with the rest of the RTE. + + Signed-off-by: Andrew J. Hesford + +diff --git orte/orted/orted-mpir/Makefile.am orte/orted/orted-mpir/Makefile.am +index 5c0dd335644a..8105dd4a6b83 100644 +--- orte/orted/orted-mpir/Makefile.am ++++ orte/orted/orted-mpir/Makefile.am +@@ -19,4 +19,4 @@ lib_LTLIBRARIES = lib@ORTE_LIB_PREFIX@open-orted-mpir.la + lib@ORTE_LIB_PREFIX@open_orted_mpir_la_SOURCES = \ + orted_mpir_breakpoint.c \ + orted_mpir.h +-lib@ORTE_LIB_PREFIX@open_orted_mpir_la_LDFLAGS = -avoid-version ++lib@ORTE_LIB_PREFIX@open_orted_mpir_la_LDFLAGS = -version-info $(libopen_rte_so_version)