2 Commits

10 changed files with 121 additions and 96 deletions

Binary file not shown.

BIN
IMB-v2021.3.tar.gz LFS Normal file

Binary file not shown.

View File

@@ -1,12 +0,0 @@
## Build Results
Current state of mpitests in openSUSE:Factory is
![Factory build results](https://br.opensuse.org/status/openSUSE:Factory/mpitests/standard)
The current state of mpitests in the devel project build (science:HPC)
![Devel project build results](https://br.opensuse.org/status/science:HPC/mpitests)

View File

@@ -1,12 +1,12 @@
<multibuild>
<package>openmpi4-gnu-hpc</package>
<package>openmpi4</package>
<package>openmpi5</package>
<package>mpich-gnu-hpc</package>
<package>mpich-ofi-gnu-hpc</package>
<package>mpich-ofi</package>
<package>mpich</package>
<package>mvapich2-gnu-hpc</package>
<package>mvapich2</package>
<package>mvapich2-psm2-gnu-hpc</package>
<package>mvapich2-psm2</package>
<package>mvapich3-ofi</package>
<package>mvapich3-ucx</package>
<package>mvapich4-ofi</package>
<package>mvapich4-ucx</package>
</multibuild>

View File

@@ -1,13 +1,13 @@
--- mpi-benchmarks-IMB-v2021.10.orig/src_cpp/Makefile 2021-10-01 15:09:19.000000000 +0200
+++ mpi-benchmarks-IMB-v2021.10/src_cpp/Makefile 2022-09-30 11:15:13.866410222 +0200
@@ -60,8 +60,8 @@
CXX=mpiicpx
--- mpi-benchmarks-IMB-v2021.3.orig/src_cpp/Makefile 2021-10-01 15:09:19.000000000 +0200
+++ mpi-benchmarks-IMB-v2021.3/src_cpp/Makefile 2022-09-30 11:15:13.866410222 +0200
@@ -77,8 +77,8 @@
CXX=mpiicpc
endif
override CPPFLAGS += -I.
-override CFLAGS += -g -O0 -Wall -Werror
-override CXXFLAGS += -g -O0 -Wall -Wextra -Werror
+override CFLAGS +=
+override CXXFLAGS +=
-override CFLAGS += -g -O0 -Wall -Wno-long-long
-override CXXFLAGS += -g -O0 -Wall -Wextra -pedantic -Wno-long-long
+override CFLAGS += -Wno-long-long
+override CXXFLAGS += -Wno-long-long
ifdef WITH_OPENMP
ifeq ("$(CXX)",$(filter "$(CXX)", "mpiicpx" "icpx"))
override CXXFLAGS += -qopenmp
override CFLAGS += -fopenmp
override CXXFLAGS += -fopenmp

View File

@@ -1,45 +1,3 @@
-------------------------------------------------------------------
Sun Nov 9 12:35:42 UTC 2025 - Nicolas Morey <nicolas.morey@suse.com>
- Enable mpitests build for mvapich4
-------------------------------------------------------------------
Fri Oct 31 18:37:34 UTC 2025 - Nicolas Morey <nicolas.morey@suse.com>
- Update IMB to 2021.10
- Add IMB-RMA-GPU Technical Preview
- Add IMB-MPI4 persistent collectives
- Migration to icx,icpx compiler
- IMB-MPI1: FP16/BF16 data_type support
- Change default value for mem_alloc_type to device
- Bug fixes
- Update osu-micro-benchmarks to 7.5.1
- See: https://mvapich.cse.ohio-state.edu/static/media/mvapich/CHANGES-OMB.txt
- Refresh imb-cpp-flags.patch against latest sources
- Drop patch fixed upstream: osu-fix-bad-return-values.patch
- Disable 32b builds
-------------------------------------------------------------------
Fri Aug 1 13:21:10 UTC 2025 - Nicolas Morey <nicolas.morey@suse.com>
- Add mvapich3 flavors
-------------------------------------------------------------------
Sat Mar 29 14:54:31 UTC 2025 - Nicolas Morey <nicolas.morey@suse.com>
- Remove support for gnu-hpc build flavours.
- Remove code handling pre-SLE12 builds.
-------------------------------------------------------------------
Mon Mar 24 12:54:55 UTC 2025 - Nicolas Morey <nicolas.morey@suse.com>
- Disable gnu-hpc build flavours (bsc#1239982)
-------------------------------------------------------------------
Wed Feb 19 20:09:26 UTC 2025 - Nicolas Morey <nicolas.morey@suse.com>
- Add openmpi5 to flavours (jsc#PED-11356)
-------------------------------------------------------------------
Tue Jun 25 13:21:10 UTC 2024 - Nicolas Morey <nicolas.morey@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package mpitests
# spec file
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -39,15 +39,15 @@
%endif
%define osu_ver 7.5.1
%define imb_ver 2021.10
%define osu_ver 6.1
%define imb_ver 2021.3
%define imb_dir mpi-benchmarks-IMB-v%{imb_ver}
%define osu_dir osu-micro-benchmarks-%{osu_ver}
%define mpi_home %{hpc_mpi_home}
%define mpi_home %{hpc_mpi_home %flavor}
%define implem_list_dir %{_datadir}/mpitests/implem.d/
%define sles_pre_15 (0%{?sle_version} > 120000 && 0%{?sle_version} < 150000)
%define sles_pre_or_15 (0%{?sle_version} > 120000 && 0%{?sle_version} <= 150000)
%define sles_pre_16 (0%{?sle_version} > 120000 && 0%{?sle_version} < 160000)
Name: mpitests%{pack_suff}
%if "%{flavor}" == ""
@@ -68,11 +68,15 @@ Source3: mpitests-runtests.sh
Source4: mpitests-run.sh
Source100: mpitests-rpmlintrc
Source101: _multibuild
Source102: README.md
Patch1: imb-cpp-flags.patch
Patch1: osu-fix-bad-return-values.patch
Patch2: imb-cpp-flags.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: dos2unix
BuildRequires: gcc-c++
# suse-hpc is not available for SLE < 15
%if 0%{?is_opensuse} || 0%{?sle_version} >= 150000
BuildRequires: suse-hpc
%endif
%if "%{flavor}" != ""
BuildRequires: %{flavor}
BuildRequires: %{flavor}-devel
@@ -80,37 +84,83 @@ Requires: %{flavor}
BuildRequires: mpitests = %{version}
Requires: mpitests = %{version}
%endif
ExcludeArch: %{arm} %ix86
%if "%{flavor}" == "mvapich2"
ExcludeArch: %{arm}
%endif
%if "%{flavor}" == "mvapich2-gnu-hpc"
%if %{sles_pre_15}
# Disable hpc builds for SLE12
ExclusiveArch: do_not_build
%endif
ExcludeArch: i586 %arm s390
%endif
%if "%{flavor}" == "mvapich2-psm2"
ExclusiveArch: x86_64
%endif
%if "%{flavor}" == "openmpi4"
ExcludeArch: ppc64
%if "%{flavor}" == "mvapich2-psm2-gnu-hpc"
%if %{sles_pre_15}
# Disable hpc builds for SLE12
ExclusiveArch: do_not_build
%else
ExclusiveArch: x86_64
%endif
%endif
%if "%{flavor}" == "openmpi5"
%if %{sles_pre_16}
# Disable openmpi5 builds for SLES < 16
%if "%{flavor}" == "openmpi1-gnu-hpc"
%if %{sles_pre_15}
# Disable hpc builds for SLE12
ExclusiveArch: do_not_build
%endif
%endif
%if "%{flavor}" == "openmpi4"
%if %{sles_pre_or_15}
# Disable openmpi4 builds for SLES up to (including) 15
ExclusiveArch: do_not_build
%else
ExcludeArch: ppc64
%endif
%endif
%if "%{flavor}" == "openmpi4-gnu-hpc"
%if %{sles_pre_or_15}
# Disable openmpi4 builds for SLES up to (including) 15
ExclusiveArch: do_not_build
%else
ExcludeArch: i586 %arm s390 ppc64
%endif
%endif
# Disable mpich builds for SLE12 as it is not available
%if "%{flavor}" == "mpich-ofi" || "%{flavor}" == "mpich"
%if %{sles_pre_15}
ExclusiveArch: do_not_build
%endif
%endif
# Disable mpich builds for SLE12 as it is not available
%if "%{flavor}" == "mpich-ofi-gnu-hpc" || "%{flavor}" == "mpich-gnu-hpc"
%if %{sles_pre_15}
ExclusiveArch: do_not_build
%endif
ExcludeArch: i586 %arm s390
%endif
%description
Set of popular MPI benchmarks: IMB v%{imb_ver} OSU benchmarks ver %{osu_ver}
%prep
%setup -c -q
%setup -T -D -a 1 -q
%autopatch -p0
%patch -P 1 -p0
%patch -P 2 -p0
%if "%{flavor}" != ""
%build
echo echo %{mpi_home}
. %{mpi_home}/bin/mpivars.sh
@@ -119,13 +169,13 @@ export CXXFLAGS="%{optflags}"
export LDFLAGS="%{optflags}"
# IMB Build
make CC=mpicc CXX=mpicxx \
-C %{imb_dir}/ all WITH_OPENMP=1
make CC=%{mpi_home}/bin/mpicc CXX=%{mpi_home}/bin/mpicxx \
-C %{imb_dir}/ all
# OSU Build
( cd %{osu_dir} && \
./configure CC=mpicc CXX=mpicxx &&
make all)
./configure CC=%{mpi_home}/bin/mpicc CXX=%{mpi_home}/bin/mpicxx &&
make all )
%install
# IMB

View File

@@ -0,0 +1,29 @@
--- osu-micro-benchmarks-6.1.orig/c/util/osu_util_mpi.c 2022-09-19 15:48:03.000000000 +0200
+++ osu-micro-benchmarks-6.1/c/util/osu_util_mpi.c 2022-09-30 10:51:18.683964260 +0200
@@ -211,7 +211,7 @@
bad_usage.message = "Please pass a ddt"
" type[cont,vect,indx]\n";
bad_usage.optarg = optarg;
- return PO_BAD_USAGE;
+ return;
}
option = strtok(optarg, ":");
if (0 == strncasecmp(optarg, "vect", 4)) {
@@ -236,7 +236,7 @@
bad_usage.message = "Invalid ddt type. Valid ddt"
" types[cont,vect,indx]\n";
bad_usage.optarg = optarg;
- return PO_BAD_USAGE;
+ return;
}
}
@@ -2006,7 +2006,7 @@
int displacements[OMB_DDT_INDEXED_MAX_LENGTH] = {0};
if (0 == options.omb_enable_ddt) {
- return;
+ return 0;
}
switch (options.ddt_type) {
case OMB_DDT_CONTIGUOUS:

BIN
osu-micro-benchmarks-6.1.tar.gz LFS Normal file

Binary file not shown.

Binary file not shown.