Compare commits
5 Commits
8edd49ad7f
...
db223e3554
Author | SHA1 | Date |
---|---|---|
Orion Poplawski | db223e3554 | |
Zbigniew Jędrzejewski-Szmek | d6ad862c2f | |
Ben Boeckel | 45ea873359 | |
Fedora Release Engineering | 181eaa9b44 | |
Florian Weimer | 3aac8d8e5b |
|
@ -9,3 +9,4 @@
|
|||
/mpich-3.4.tar.gz
|
||||
/mpich-3.4.1.tar.gz
|
||||
/mpich-4.0.2.tar.gz
|
||||
/mpich-4.0.3.tar.gz
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
From 2b8c5c7dc4974fc471b446e6cc939936aa14fd8f Mon Sep 17 00:00:00 2001
|
||||
From: Hui Zhou <hzhou321@anl.gov>
|
||||
Date: Sat, 21 Jan 2023 10:35:32 -0600
|
||||
Subject: [PATCH] coll: fix allgatherv early return case
|
||||
|
||||
The localcopy omitted considering displs.
|
||||
---
|
||||
src/binding/c/coll_api.txt | 10 ++++++++--
|
||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/binding/c/coll_api.txt b/src/binding/c/coll_api.txt
|
||||
index 55be70d093e..d288272e2f3 100644
|
||||
--- a/src/binding/c/coll_api.txt
|
||||
+++ b/src/binding/c/coll_api.txt
|
||||
@@ -57,7 +57,10 @@ MPI_Allgatherv:
|
||||
{ -- early_return --
|
||||
if (comm_ptr->comm_kind == MPIR_COMM_KIND__INTRACOMM && MPIR_Comm_size(comm_ptr) == 1) {
|
||||
if (sendbuf != MPI_IN_PLACE) {
|
||||
- MPIR_Localcopy(sendbuf, sendcount, sendtype, recvbuf, recvcounts[0], recvtype);
|
||||
+ MPI_Aint recvtype_extent;
|
||||
+ MPIR_Datatype_get_extent_macro(recvtype, recvtype_extent);
|
||||
+ MPIR_Localcopy(sendbuf, sendcount, sendtype,
|
||||
+ (char *) recvbuf + displs[0] * recvtype_extent, recvcounts[0], recvtype);
|
||||
}
|
||||
goto fn_exit;
|
||||
}
|
||||
@@ -188,7 +191,10 @@ MPI_Iallgatherv:
|
||||
{ -- early_return --
|
||||
if (comm_ptr->comm_kind == MPIR_COMM_KIND__INTRACOMM && MPIR_Comm_size(comm_ptr) == 1) {
|
||||
if (sendbuf != MPI_IN_PLACE) {
|
||||
- MPIR_Localcopy(sendbuf, sendcount, sendtype, recvbuf, recvcounts[0], recvtype);
|
||||
+ MPI_Aint recvtype_extent;
|
||||
+ MPIR_Datatype_get_extent_macro(recvtype, recvtype_extent);
|
||||
+ MPIR_Localcopy(sendbuf, sendcount, sendtype,
|
||||
+ (char *) recvbuf + displs[0] * recvtype_extent, recvcounts[0], recvtype);
|
||||
}
|
||||
MPIR_Request *request_ptr = MPIR_Request_create_complete(MPIR_REQUEST_KIND__COLL);
|
||||
*request = request_ptr->handle;
|
|
@ -0,0 +1,163 @@
|
|||
aclocal_cc.m4: Remove use of implicit int from weak symbol checks
|
||||
|
||||
Implicit int is no longer part of the C language since the 1999
|
||||
revision.
|
||||
|
||||
Submitted upstream: <https://github.com/pmodels/mpich/pull/6301>
|
||||
|
||||
diff --git a/confdb/aclocal_cc.m4 b/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/confdb/aclocal_cc.m4
|
||||
+++ b/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
||||
diff --git a/modules/json-c/autoconf-archive/m4/aclocal_cc.m4 b/modules/json-c/autoconf-archive/m4/aclocal_cc.m4
|
||||
index 8a1552d561306f24..cd28a4f937eaf824 100644
|
||||
--- a/modules/json-c/autoconf-archive/m4/aclocal_cc.m4
|
||||
+++ b/modules/json-c/autoconf-archive/m4/aclocal_cc.m4
|
||||
@@ -383,7 +383,7 @@ extern int pfoo_(int);
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
-int Foo(a) { return a; }
|
||||
+int Foo(int a) { return a; }
|
||||
])
|
||||
],[
|
||||
AC_LANG_SOURCE([
|
||||
diff --git a/modules/yaksa/m4/aclocal_cc.m4 b/modules/yaksa/m4/aclocal_cc.m4
|
||||
index d15d6741602daf07..9fcf48527653ff01 100644
|
||||
--- a/modules/yaksa/m4/aclocal_cc.m4
|
||||
+++ b/modules/yaksa/m4/aclocal_cc.m4
|
||||
@@ -422,7 +422,7 @@ extern int pfoo_(int);
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
-int Foo(a) { return a; }
|
||||
+int Foo(int a) { return a; }
|
||||
])
|
||||
],[
|
||||
AC_LANG_SOURCE([
|
||||
diff --git a/src/mpi/romio/confdb/aclocal_cc.m4 b/src/mpi/romio/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/src/mpi/romio/confdb/aclocal_cc.m4
|
||||
+++ b/src/mpi/romio/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
||||
diff --git a/src/mpi/romio/mpl/confdb/aclocal_cc.m4 b/src/mpi/romio/mpl/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/src/mpi/romio/mpl/confdb/aclocal_cc.m4
|
||||
+++ b/src/mpi/romio/mpl/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
||||
diff --git a/src/mpl/confdb/aclocal_cc.m4 b/src/mpl/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/src/mpl/confdb/aclocal_cc.m4
|
||||
+++ b/src/mpl/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
||||
diff --git a/src/pm/hydra/confdb/aclocal_cc.m4 b/src/pm/hydra/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/src/pm/hydra/confdb/aclocal_cc.m4
|
||||
+++ b/src/pm/hydra/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
||||
diff --git a/src/pm/hydra/mpl/confdb/aclocal_cc.m4 b/src/pm/hydra/mpl/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/src/pm/hydra/mpl/confdb/aclocal_cc.m4
|
||||
+++ b/src/pm/hydra/mpl/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
||||
diff --git a/src/pm/hydra2/confdb/aclocal_cc.m4 b/src/pm/hydra2/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/src/pm/hydra2/confdb/aclocal_cc.m4
|
||||
+++ b/src/pm/hydra2/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
||||
diff --git a/src/pm/hydra2/mpl/confdb/aclocal_cc.m4 b/src/pm/hydra2/mpl/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/src/pm/hydra2/mpl/confdb/aclocal_cc.m4
|
||||
+++ b/src/pm/hydra2/mpl/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
||||
diff --git a/test/mpi/confdb/aclocal_cc.m4 b/test/mpi/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/test/mpi/confdb/aclocal_cc.m4
|
||||
+++ b/test/mpi/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
||||
diff --git a/test/mpi/dtpools/confdb/aclocal_cc.m4 b/test/mpi/dtpools/confdb/aclocal_cc.m4
|
||||
index 36b44216d36dd8db..cafb5a6ae137f750 100644
|
||||
--- a/test/mpi/dtpools/confdb/aclocal_cc.m4
|
||||
+++ b/test/mpi/dtpools/confdb/aclocal_cc.m4
|
||||
@@ -388,7 +388,7 @@ AC_CACHE_CHECK([for multiple weak symbol support], pac_cv_prog_c_multiple_weak_s
|
||||
#pragma weak PFoo_ = Foo
|
||||
#pragma weak pfoo_ = Foo
|
||||
int Foo(int);
|
||||
- int Foo(a) { return a; }
|
||||
+ int Foo(int a) { return a; }
|
||||
]])],[AC_LANG_SOURCE([[
|
||||
extern int PFoo(int), PFoo_(int), pfoo_(int);
|
||||
int main() {
|
|
@ -0,0 +1,18 @@
|
|||
Remove spurious argument to AC_CHECK_ALIGNOF, which caused this
|
||||
configure test to fail.
|
||||
|
||||
Submitted upstream: <https://github.com/pmodels/mpich/pull/6302>
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 3e2aa2cb7e828675..f76eb49833bb358c 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2701,7 +2701,7 @@ if test "$MPID_NO_FLOAT16" != "yes" ; then
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------------------------
|
||||
-AC_CHECK_ALIGNOF([max_align_t],[0],[#include <stddef.h>])
|
||||
+AC_CHECK_ALIGNOF([max_align_t],[#include <stddef.h>])
|
||||
|
||||
if test "$ac_cv_alignof_max_align_t" != "0" ; then
|
||||
AC_DEFINE_UNQUOTED(MAX_ALIGNMENT,$ac_cv_alignof_max_align_t,[Controls byte alignment of structures (for aligning allocated structures)])
|
|
@ -0,0 +1,17 @@
|
|||
Do not call undeclared exit function in __thread support check
|
||||
|
||||
Submitted upstream: <https://github.com/pmodels/json-c/pull/2>
|
||||
|
||||
diff --git a/modules/json-c/configure.ac b/modules/json-c/configure.ac
|
||||
index 9eb80bcf1c1d2e62..1511d7def23e8c39 100644
|
||||
--- a/modules/json-c/configure.ac
|
||||
+++ b/modules/json-c/configure.ac
|
||||
@@ -69,7 +69,7 @@ AC_CACHE_CHECK([for __thread support], ac_cv___thread, [dnl
|
||||
AC_LINK_IFELSE([dnl
|
||||
AC_LANG_PROGRAM([[#undef __thread
|
||||
static __thread int a; int foo (int b) { return a + b; }]],
|
||||
- [[exit (foo (0));]])],
|
||||
+ [[return foo (0);]])],
|
||||
ac_cv___thread=yes, ac_cv___thread=no)
|
||||
])
|
||||
AS_IF([test "x$ac_cv___thread" != xno],
|
|
@ -1 +0,0 @@
|
|||
import sys, os; s = os.getenv('MPI_PYTHON2_SITEARCH'); s and (s in sys.path or sys.path.append(s))
|
11
mpich.spec
11
mpich.spec
|
@ -1,13 +1,12 @@
|
|||
Summary: A high-performance implementation of MPI
|
||||
Name: mpich
|
||||
Version: 4.0.2
|
||||
Version: 4.0.3
|
||||
Release: %autorelease
|
||||
License: MIT
|
||||
URL: https://www.mpich.org/
|
||||
|
||||
Source0: https://www.mpich.org/static/downloads/%{version}/%{name}-%{version}.tar.gz
|
||||
Source1: mpich.macros
|
||||
Source2: mpich.pth.py2
|
||||
Source3: mpich.pth.py3
|
||||
|
||||
Patch: 0001-pkgconf-remove-optimization-and-link-flags-from-pkgc.patch
|
||||
|
@ -15,6 +14,12 @@ Patch: 0002-pkgconf-also-drop-rpath-flags-from-pkgconf-file.patch
|
|||
Patch: 0003-Drop-build-flags-e.g.-specs.-and-lto-from-mpi-wrappe.patch
|
||||
Patch: 0004-Make-mpich.module-useful.patch
|
||||
# TODO: submit ^ upstream
|
||||
# https://github.com/pmodels/mpich/pull/6374
|
||||
Patch: 6374.patch
|
||||
|
||||
Patch: mpich-configure-max_align_t.patch
|
||||
Patch: mpich-aclocal_cc-implicit-int.patch
|
||||
Patch: mpich-json-configure-__thread.patch
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: autoconf
|
||||
|
@ -183,8 +188,6 @@ cp -p %{buildroot}%{_sysconfdir}/profile.d/mpich-%{_arch}.{sh,csh}
|
|||
install -pDm0644 %{SOURCE1} %{buildroot}%{_rpmconfigdir}/macros.d/macros.%{name}
|
||||
|
||||
# Install the .pth files
|
||||
mkdir -p %{buildroot}%{python2_sitearch}/%{name}
|
||||
install -pDm0644 %{SOURCE2} %{buildroot}%{python2_sitearch}/%{name}.pth
|
||||
mkdir -p %{buildroot}%{python3_sitearch}/%{name}
|
||||
install -pDm0644 %{SOURCE3} %{buildroot}%{python3_sitearch}/%{name}.pth
|
||||
|
||||
|
|
2
sources
2
sources
|
@ -1 +1 @@
|
|||
SHA512 (mpich-4.0.2.tar.gz) = 42b7d8ffee5314cdf9b9f75a2b864f7686066ef86cc225feac7f25c7a487b45636df51c0bbc2d677992e07ed62ae24daf73617f2b44b0dacc6ff69f4e66a9208
|
||||
SHA512 (mpich-4.0.3.tar.gz) = d1463dca8f0073cee6a2db894dbb3889986c6ee6353577f778abc38c90a06afb960e3dbbe87d3c2f284e32650b723a153a143f10b32e4a3bfe6087682ffe9649
|
||||
|
|
Loading…
Reference in New Issue