Rebase to latest upstream release PSM2_11.2.206
Signed-off-by: Honggang Li <honli@redhat.com>
This commit is contained in:
parent
1013cf0727
commit
3655f93b67
1
.gitignore
vendored
1
.gitignore
vendored
@ -7,3 +7,4 @@
|
|||||||
/libpsm2-11.2.78.tar.gz
|
/libpsm2-11.2.78.tar.gz
|
||||||
/libpsm2-11.2.86.tar.gz
|
/libpsm2-11.2.86.tar.gz
|
||||||
/libpsm2-11.2.185.tar.gz
|
/libpsm2-11.2.185.tar.gz
|
||||||
|
/libpsm2-11.2.206.tar.gz
|
||||||
|
@ -1,51 +0,0 @@
|
|||||||
From 6e0231074111ff1fda0b2de1765e1988fda2e9c9 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Brendan Cunningham <bcunningham@cornelisnetworks.com>
|
|
||||||
Date: Fri, 7 May 2021 16:33:35 -0400
|
|
||||||
Subject: [PATCH] README: add section about OMPI 4.1.x, OFI BTL, and high-PPN
|
|
||||||
jobs.
|
|
||||||
|
|
||||||
Signed-off-by: Brendan Cunningham <bcunningham@cornelisnetworks.com>
|
|
||||||
---
|
|
||||||
README | 19 ++++++++++++++++++-
|
|
||||||
1 file changed, 18 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/README b/README
|
|
||||||
index 7990555..2961534 100644
|
|
||||||
--- a/README
|
|
||||||
+++ b/README
|
|
||||||
@@ -67,7 +67,6 @@ Contains the following sections:
|
|
||||||
- INSTALLING
|
|
||||||
* INSTALLING USING MAKEFILE
|
|
||||||
* INSTALLING USING EITHER YUM OR DNF
|
|
||||||
-- TESTING
|
|
||||||
- RELATED SOFTWARE TO PSM2
|
|
||||||
- SUPPORTING DOCUMENTATION
|
|
||||||
|
|
||||||
@@ -251,6 +250,24 @@ libraries available on them. Open MPI provides a standard configure, make and
|
|
||||||
make install mechanism which will detect and build the relevant PSM2 network
|
|
||||||
modules for Open MPI once the header and runtime files are detected.
|
|
||||||
|
|
||||||
+Open MPI 4.1.x, OFI BTL, and high PPN jobs
|
|
||||||
+----------------
|
|
||||||
+Open MPI added the OFI BTL for one-sided communication. On an OPA fabric, the
|
|
||||||
+OFI BTL may use the PSM2 OFI provider underneath. If PSM2 is in-use as both
|
|
||||||
+the MTL (directly or via OFI) and the BTL (via OFI), then each rank in the
|
|
||||||
+Open MPI job will require two PSM2 endpoints and PSM2 context-sharing will
|
|
||||||
+be disabled.
|
|
||||||
+
|
|
||||||
+In this case, total number of PSM2 ranks on a node can be no more than:
|
|
||||||
+ (num_hfi * num_user_contexts)/2
|
|
||||||
+Where num_user_contexts is typically equal to the number of physical CPU
|
|
||||||
+cores on that node.
|
|
||||||
+
|
|
||||||
+If your job does not require an inter-node BTL (e.g. OFI), then you can
|
|
||||||
+disable the OFI BTL in one of two ways:
|
|
||||||
+ 1. When building Open MPI, specify '--with-ofi=no' when you run 'configure'.
|
|
||||||
+ 2. When running your Open MPI job, add '-mca btl self,vader'.
|
|
||||||
+
|
|
||||||
MVAPICH2 support
|
|
||||||
----------------
|
|
||||||
MVAPICH2 supports PSM2 transport for optimized communication on HFI hardware.
|
|
||||||
--
|
|
||||||
2.32.0
|
|
||||||
|
|
@ -1,26 +0,0 @@
|
|||||||
diff -Nrup a/include/linux-i386/sysdep.h b/include/linux-i386/sysdep.h
|
|
||||||
--- a/include/linux-i386/sysdep.h 2019-10-03 20:00:29.000000000 -0600
|
|
||||||
+++ b/include/linux-i386/sysdep.h 2020-10-19 16:10:45.680585173 -0600
|
|
||||||
@@ -139,12 +139,18 @@ static __inline__ uint32_t ips_cmpxchg(v
|
|
||||||
uint32_t old_val, uint32_t new_val)
|
|
||||||
{
|
|
||||||
uint32_t prev;
|
|
||||||
- struct xchg_dummy {
|
|
||||||
- uint32_t a[100];
|
|
||||||
- };
|
|
||||||
|
|
||||||
+ /* This code used to cast PTR to a type which was an array of 100
|
|
||||||
+ uint32_t objects. That makes no sense as the cmpxchgl's side
|
|
||||||
+ effect can be covered by an single int.
|
|
||||||
+
|
|
||||||
+ The semantics of GCC's ASMs for memory is that it clobbers the
|
|
||||||
+ whole pointed-to object. Thus analyzers saw a 100 uint32_t sized
|
|
||||||
+ store which triggers diagnostics for out of bounds array writes.
|
|
||||||
+
|
|
||||||
+ The cast to the dummy type has been removed. */
|
|
||||||
asm volatile (LOCK_PREFIX "cmpxchgl %1,%2" : "=a"(prev)
|
|
||||||
- : "q"(new_val), "m"(*(struct xchg_dummy *)ptr), "0"(old_val)
|
|
||||||
+ : "q"(new_val), "m"(*ptr), "0"(old_val)
|
|
||||||
: "memory");
|
|
||||||
|
|
||||||
return prev;
|
|
15
libpsm2.spec
15
libpsm2.spec
@ -52,20 +52,17 @@
|
|||||||
#
|
#
|
||||||
Summary: Intel PSM Libraries
|
Summary: Intel PSM Libraries
|
||||||
Name: libpsm2
|
Name: libpsm2
|
||||||
Version: 11.2.185
|
Version: 11.2.206
|
||||||
Release: 2%{?dist}
|
Release: 1%{?dist}
|
||||||
License: BSD or GPLv2
|
License: BSD or GPLv2
|
||||||
URL: https://github.com/cornelisnetworks/opa-psm2/
|
URL: https://github.com/cornelisnetworks/opa-psm2/
|
||||||
|
|
||||||
# The tarball can be created by:
|
# The tarball can be created by:
|
||||||
# git clone https://github.com/cornelisnetworks/opa-psm2.git
|
# git clone https://github.com/cornelisnetworks/opa-psm2.git
|
||||||
# cd opa-psm2
|
# cd opa-psm2
|
||||||
# git checkout 7a33bedc4bb3dff4e57c00293a2d70890db4d983
|
# git checkout c3a7d9468d5623c0164b783346bada8664a9a2c9
|
||||||
# make dist
|
# make dist
|
||||||
Source0: %{name}-%{version}.tar.gz
|
Source0: %{name}-%{version}.tar.gz
|
||||||
Patch1: makefile-distro-from-environment.patch
|
|
||||||
Patch2: %{name}-gcc11.patch
|
|
||||||
Patch3: 0001-README-add-section-about-OMPI-4.1.x-OFI-BTL-and-high.patch
|
|
||||||
|
|
||||||
# The OPA product is supported on x86_64 only:
|
# The OPA product is supported on x86_64 only:
|
||||||
ExclusiveArch: x86_64
|
ExclusiveArch: x86_64
|
||||||
@ -105,9 +102,6 @@ Support for MPIs linked with PSM versions < 2
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch1 -p1
|
|
||||||
%patch2 -p1
|
|
||||||
%patch3 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%{set_build_flags}
|
%{set_build_flags}
|
||||||
@ -153,6 +147,9 @@ rm -f %{buildroot}%{_libdir}/*.a
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Dec 07 2021 Honggang Li <honli@redhat.com> - 11.2.206-1
|
||||||
|
- Rebase to latest upstream release PSM2_11.2.206
|
||||||
|
|
||||||
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11.2.185-2
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11.2.185-2
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||||
|
|
||||||
|
@ -1,14 +0,0 @@
|
|||||||
diff --git a/Makefile b/Makefile
|
|
||||||
index 5a31d64..d819899 100644
|
|
||||||
--- a/Makefile
|
|
||||||
+++ b/Makefile
|
|
||||||
@@ -164,7 +164,8 @@ nthreads := $(shell echo $$(( `nproc` * 2 )) )
|
|
||||||
# The DISTRO variable is used subsequently for variable
|
|
||||||
# behaviors of the 3 distros.
|
|
||||||
|
|
||||||
-DISTRO := $(shell . /etc/os-release; if [[ "$$ID" == "sle_hpc" ]]; then ID="sles"; fi; echo $$ID)
|
|
||||||
+# Use DISTRO from the environment
|
|
||||||
+# DISTRO := $(shell . /etc/os-release; if [[ "$$ID" == "sle_hpc" ]]; then ID="sles"; fi; echo $$ID)
|
|
||||||
|
|
||||||
# By default the following two variables have the following values:
|
|
||||||
LIBPSM2_COMPAT_CONF_DIR := /etc
|
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (libpsm2-11.2.185.tar.gz) = a418edac2366213e16be9cfcbf0483be65940a6db8cf3cb240bfbb16b58d0b8277f3b7a4fd888c1992201bf6918a79183de08e8f1fecb8c46324dd69daed836e
|
SHA512 (libpsm2-11.2.206.tar.gz) = 87beb20a2b16fe4e233cdaa68a000470d6fe55e2b26131372caddf0cfb050e5e55320677ee25dfb7274ab067e3911b2729cd4ff71c158218c36a9f8815b51bb8
|
||||||
|
Loading…
Reference in New Issue
Block a user