Accepting request 882294 from science:HPC

- Update to version 4.1.0
  * collectives: Add HAN and ADAPT adaptive collectives components.
    Both components are off by default and can be enabled by specifying
    "mpirun --mca coll_adapt_priority 100 --mca coll_han_priority 100 ...".
    We intend to enable both by default in Open MPI 5.0.
  * OMPIO is now the default for MPI-IO on all filesystems, including
    Lustre (prior to this, ROMIO was the default for Lustre).  Many
    thanks to Mark Dixon for identifying MPI I/O issues and providing
    access to Lustre systems for testing.
  * Minor MPI one-sided RDMA performance improvements.
  * Fix hcoll MPI_SCATTERV with MPI_IN_PLACE.
  * Add AVX support for MPI collectives.
  * Updates to mpirun(1) about "slots" and PE=x values.
  * Fix buffer allocation for large environment variables.  Thanks to
    @zrss for reporting the issue.
  * Upgrade the embedded OpenPMIx to v3.2.2.
  * Fix issue with extra-long values in MCA files.  Thanks to GitHub
    user @zrss for bringing the issue to our attention.
  * UCX: Fix zero-sized datatype transfers.
  * Fix --cpu-list for non-uniform modes.
  * Fix issue in PMIx callback caused by missing memory barrier on Arm platforms.
  * OFI MTL: Various bug fixes.
  * Fixed issue where MPI_TYPE_CREATE_RESIZED would create a datatype
    with unexpected extent on oddly-aligned datatypes.
  * collectives: Adjust default tuning thresholds for many collective
    algorithms
  * runtime: fix situation where rank-by argument does not work
  * Portals4: Clean up error handling corner cases
  * runtime: Remove --enable-install-libpmix option, which has not
    worked since it was added
  * UCX: Allow UCX 1.8 to be used with the btl uct
  * UCX: Replace usage of the deprecated NB API of UCX with NBX
  * OMPIO: Add support for the IME file system
  * OFI/libfabric: Added support for multiple NICs
  * OFI/libfabric: Added support for Scalable Endpoints
  * OFI/libfabric: Added btl for one-sided support
  * OFI/libfabric: Multiple small bugfixes
  * libnbc: Adding numerous performance-improving algorithms
- Removed: reproducible.patch - replaced by spec file settings.

OBS-URL: https://build.opensuse.org/request/show/882294
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/openmpi4?expand=0&rev=5
This commit is contained in:
Richard Brown 2021-04-01 12:17:34 +00:00 committed by Git OBS Bridge
commit a3ca4c5ef9
6 changed files with 57 additions and 141 deletions

View File

@ -8,7 +8,7 @@
<param name="versionformat">@PARENT_TAG@.@TAG_OFFSET@.%h</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="versionrewrite-replacement">\1</param>
<param name="revision">88d8972a4085f6492dc38786c925f9dec446d49e</param>
<param name="revision">9ac5471035b9066462506bc4d92be7a340a8058e</param>
</service>
<service name="recompress" mode="disabled">
<param name="file">openmpi*.tar</param>

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:96c05d6b25fb8781c41a6c2cda9cf069e265738557ce4c3dfdc35587fa1b88e7
size 6301925

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c6b9013b8fc5788371477d68b8a3273781c36b57600b4957af705aa70dc0688e
size 6418922

View File

@ -1,3 +1,46 @@
-------------------------------------------------------------------
Wed Mar 24 08:01:35 UTC 2021 - Egbert Eich <eich@suse.com>
- Update to version 4.1.0
* collectives: Add HAN and ADAPT adaptive collectives components.
Both components are off by default and can be enabled by specifying
"mpirun --mca coll_adapt_priority 100 --mca coll_han_priority 100 ...".
We intend to enable both by default in Open MPI 5.0.
* OMPIO is now the default for MPI-IO on all filesystems, including
Lustre (prior to this, ROMIO was the default for Lustre). Many
thanks to Mark Dixon for identifying MPI I/O issues and providing
access to Lustre systems for testing.
* Minor MPI one-sided RDMA performance improvements.
* Fix hcoll MPI_SCATTERV with MPI_IN_PLACE.
* Add AVX support for MPI collectives.
* Updates to mpirun(1) about "slots" and PE=x values.
* Fix buffer allocation for large environment variables. Thanks to
@zrss for reporting the issue.
* Upgrade the embedded OpenPMIx to v3.2.2.
* Fix issue with extra-long values in MCA files. Thanks to GitHub
user @zrss for bringing the issue to our attention.
* UCX: Fix zero-sized datatype transfers.
* Fix --cpu-list for non-uniform modes.
* Fix issue in PMIx callback caused by missing memory barrier on Arm platforms.
* OFI MTL: Various bug fixes.
* Fixed issue where MPI_TYPE_CREATE_RESIZED would create a datatype
with unexpected extent on oddly-aligned datatypes.
* collectives: Adjust default tuning thresholds for many collective
algorithms
* runtime: fix situation where rank-by argument does not work
* Portals4: Clean up error handling corner cases
* runtime: Remove --enable-install-libpmix option, which has not
worked since it was added
* UCX: Allow UCX 1.8 to be used with the btl uct
* UCX: Replace usage of the deprecated NB API of UCX with NBX
* OMPIO: Add support for the IME file system
* OFI/libfabric: Added support for multiple NICs
* OFI/libfabric: Added support for Scalable Endpoints
* OFI/libfabric: Added btl for one-sided support
* OFI/libfabric: Multiple small bugfixes
* libnbc: Adding numerous performance-improving algorithms
- Removed: reproducible.patch - replaced by spec file settings.
-------------------------------------------------------------------
Tue Sep 8 18:35:17 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>

View File

@ -1,7 +1,7 @@
#
# spec file for package openmpi4
# spec file for package %{package_name}%{?testsuite:-testsuite}
#
# Copyright (c) 2020 SUSE LLC
# Copyright (c) 2021 SUSE LLC
# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
# University Research and Technology
# Corporation. All rights reserved.
@ -42,8 +42,8 @@
# % define build_static_devel 1
%define pname openmpi
%define vers 4.0.5
%define _vers 4_0_5
%define vers 4.1.0
%define _vers 4_1_0
%define m_f_ver 4
%bcond_with ringdisabled
@ -115,7 +115,7 @@ ExclusiveArch: do_not_build
%global hpc_openmpi_pack_version %{hpc_openmpi_dep_version}
%endif
%define git_ver .0.88d8972a4085
%define git_ver .0.9ac5471035
#############################################################################
#
@ -135,7 +135,6 @@ Source2: openmpi4-rpmlintrc
Source3: macros.hpc-openmpi
Source4: mpivars.sh
Source5: mpivars.csh
Patch0: reproducible.patch
Provides: mpi
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
@ -163,7 +162,7 @@ BuildRequires: gcc-c++
BuildRequires: gcc-fortran
BuildRequires: mpi-selector
Requires: mpi-selector
Requires(preun): mpi-selector
Requires(preun):mpi-selector
Requires: %{package_name}-libs = %{version}
%else
BuildRequires: %{compiler_family}%{?c_f_ver}-compilers-hpc-macros-devel
@ -210,7 +209,7 @@ Requires: openssh
%define mpi_bindir %hpc_bindir
%define mpi_libdir %hpc_libdir
%define mpi_datadir %hpc_datadir
%define mpi_helpdir %{mpi_datadir}/openmpi
%define mpi_helpdir %{mpi_datadir}/openmpi
%define mpi_includedir %hpc_includedir
%define mpi_mandir %hpc_mandir
@ -289,7 +288,7 @@ programming API, which is a Partitioned Global Address Space (PGAS)
abstraction layer providing inter-process communication using
one-sided communication techniques.
This package provides the development files for Open MPI/OpenSHMEM
This package provides the development files for Open MPI/OpenSHMEM
version %{m_f_ver}, such as wrapper compilers and header files for
MPI/OpenSHMEM development.
@ -401,8 +400,6 @@ openmpi%{m_f_ver}-libs
EOF
%endif
%patch0 -p1
# Live patch the VERSION file
sed -i -e 's/^greek=.*$/greek=%{git_ver}/' -e 's/^repo_rev=.*$/repo_rev=%{version}%{git_ver}/' \
-e 's/^date=.*$/date="OpenMPI %{version} Distribution for SUSE"/' VERSION
@ -414,8 +411,10 @@ sed -i -e 's/^greek=.*$/greek=%{git_ver}/' -e 's/^repo_rev=.*$/repo_rev=%{versio
#############################################################################
%build
# make build reproducible
export USER=OBS
export HOSTNAME=OBS
# OBS sets SOURCE_DATE_EPOCH
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
%{?with_hpc:%hpc_debug}
./autogen.pl --force

View File

@ -1,126 +0,0 @@
Author: Bernhard M. Wiedemann <bwiedemann suse de>
Date: 2017-06-29
make package build reproducible
by using fixed date + hostname
https://github.com/open-mpi/ompi/issues/3759
https://bugzilla.opensuse.org/show_bug.cgi?id=1047218 packages do not build reproducibly from including build time
https://bugzilla.opensuse.org/show_bug.cgi?id=1084909 +hostname
Index: openmpi-4.0.0/autogen.pl
===================================================================
--- openmpi-4.0.0.orig/autogen.pl
+++ openmpi-4.0.0/autogen.pl
@@ -85,7 +85,7 @@ if ($^O eq "solaris") {
}
$username = getpwuid($>);
-$full_hostname = `hostname`;
+$full_hostname = "openSUSEnohostname";
chomp($full_hostname);
$hostname = $full_hostname;
$hostname =~ s/^([\w\-]+)\..+/\1/;
@@ -1190,7 +1190,7 @@ if (-e "orcm") {
#---------------------------------------------------------------------------
-$full_hostname = `hostname`;
+$full_hostname = "openSUSEnohostname";
chomp($full_hostname);
$m4 = "dnl
Index: openmpi-4.0.0/config/opal_functions.m4
===================================================================
--- openmpi-4.0.0.orig/config/opal_functions.m4
+++ openmpi-4.0.0/config/opal_functions.m4
@@ -94,9 +94,9 @@ EOF
# Save some stats about this build
#
-OPAL_CONFIGURE_USER="`whoami`"
-OPAL_CONFIGURE_HOST="`(hostname || uname -n) 2> /dev/null | sed 1q`"
-OPAL_CONFIGURE_DATE="`date`"
+OPAL_CONFIGURE_USER="openSUSEnowhoami"
+OPAL_CONFIGURE_HOST="openSUSEnohostname"
+OPAL_CONFIGURE_DATE="openSUSEnodate"
OPAL_LIBNL_SANITY_INIT
@@ -116,9 +116,9 @@ AC_DEFUN([OPAL_BASIC_SETUP],[
# Save some stats about this build
#
-OPAL_CONFIGURE_USER="`whoami`"
-OPAL_CONFIGURE_HOST="`(hostname || uname -n) 2> /dev/null | sed 1q`"
-OPAL_CONFIGURE_DATE="`date`"
+OPAL_CONFIGURE_USER="openSUSEnowhoami"
+OPAL_CONFIGURE_HOST="openSUSEnohostname"
+OPAL_CONFIGURE_DATE="openSUSEnodate"
#
# Make automake clean emacs ~ files for "make clean"
Index: openmpi-4.0.0/config/opal_get_version.m4
===================================================================
--- openmpi-4.0.0.orig/config/opal_get_version.m4
+++ openmpi-4.0.0/config/opal_get_version.m4
@@ -91,7 +91,7 @@ m4_define([OPAL_GET_VERSION],[
$2_REPO_REV=`git describe --tags --always`
fi
else
- $2_REPO_REV="date`date '+%Y-%m-%d'`"
+ $2_REPO_REV="date"
fi
fi
Index: openmpi-4.0.0/ompi/tools/ompi_info/Makefile.am
===================================================================
--- openmpi-4.0.0.orig/ompi/tools/ompi_info/Makefile.am
+++ openmpi-4.0.0/ompi/tools/ompi_info/Makefile.am
@@ -27,9 +27,9 @@ AM_CFLAGS = \
-DOPAL_CONFIGURE_USER="\"@OPAL_CONFIGURE_USER@\"" \
-DOPAL_CONFIGURE_HOST="\"@OPAL_CONFIGURE_HOST@\"" \
-DOPAL_CONFIGURE_DATE="\"@OPAL_CONFIGURE_DATE@\"" \
- -DOMPI_BUILD_USER="\"$$USER\"" \
- -DOMPI_BUILD_HOST="\"`(hostname || uname -n) 2> /dev/null | sed 1q`\"" \
- -DOMPI_BUILD_DATE="\"`date`\"" \
+ -DOMPI_BUILD_USER="\"USER\"" \
+ -DOMPI_BUILD_HOST="\"openSUSEnohostname\"" \
+ -DOMPI_BUILD_DATE="\"`date -u -r ../../../NEWS`\"" \
-DOMPI_BUILD_CFLAGS="\"@CFLAGS@\"" \
-DOMPI_BUILD_CPPFLAGS="\"@CPPFLAGS@\"" \
-DOMPI_BUILD_CXXFLAGS="\"@CXXFLAGS@\"" \
Index: openmpi-4.0.0/orte/tools/orte-info/Makefile.am
===================================================================
--- openmpi-4.0.0.orig/orte/tools/orte-info/Makefile.am
+++ openmpi-4.0.0/orte/tools/orte-info/Makefile.am
@@ -24,9 +24,9 @@ AM_CFLAGS = \
-DOPAL_CONFIGURE_USER="\"@OPAL_CONFIGURE_USER@\"" \
-DOPAL_CONFIGURE_HOST="\"@OPAL_CONFIGURE_HOST@\"" \
-DOPAL_CONFIGURE_DATE="\"@OPAL_CONFIGURE_DATE@\"" \
- -DOMPI_BUILD_USER="\"$$USER\"" \
- -DOMPI_BUILD_HOST="\"`(hostname || uname -n) | sed 1q`\"" \
- -DOMPI_BUILD_DATE="\"`date`\"" \
+ -DOMPI_BUILD_USER="\"USER\"" \
+ -DOMPI_BUILD_HOST="\"openSUSEnohostname\"" \
+ -DOMPI_BUILD_DATE="\"`date -u -r ../../../NEWS`\"" \
-DOMPI_BUILD_CFLAGS="\"@CFLAGS@\"" \
-DOMPI_BUILD_CPPFLAGS="\"@CPPFLAGS@\"" \
-DOMPI_BUILD_CXXFLAGS="\"@CXXFLAGS@\"" \
Index: openmpi-4.0.0/oshmem/tools/oshmem_info/Makefile.am
===================================================================
--- openmpi-4.0.0.orig/oshmem/tools/oshmem_info/Makefile.am
+++ openmpi-4.0.0/oshmem/tools/oshmem_info/Makefile.am
@@ -16,9 +16,9 @@ AM_CPPFLAGS = \
-DOPAL_CONFIGURE_USER="\"@OPAL_CONFIGURE_USER@\"" \
-DOPAL_CONFIGURE_HOST="\"@OPAL_CONFIGURE_HOST@\"" \
-DOPAL_CONFIGURE_DATE="\"@OPAL_CONFIGURE_DATE@\"" \
- -DOMPI_BUILD_USER="\"$$USER\"" \
- -DOMPI_BUILD_HOST="\"`(hostname || uname -n) 2> /dev/null | sed 1q`\"" \
- -DOMPI_BUILD_DATE="\"`date`\"" \
+ -DOMPI_BUILD_USER="\"USER\"" \
+ -DOMPI_BUILD_HOST="\"openSUSEnohostname\"" \
+ -DOMPI_BUILD_DATE="\"`date -u -r ../../../NEWS`\"" \
-DOMPI_BUILD_CFLAGS="\"@CFLAGS@\"" \
-DOMPI_BUILD_CPPFLAGS="\"@CPPFLAGS@\"" \
-DOMPI_BUILD_CXXFLAGS="\"@CXXFLAGS@\"" \