From acf4d4991460d8c26b0186b8f9240f42fa7be788 Mon Sep 17 00:00:00 2001 From: Kamal Heib Date: Mon, 5 Jun 2023 13:01:39 -0400 Subject: [PATCH] Update to upstream release 2.3.7-1 Update package and add gating tests Resolves: rhbz#2212462 Signed-off-by: Kamal Heib --- .gitignore | 1 + ...dle-contrib-hwloc-and-osu_benchmarks.patch | 39 +++++++++++++++++++ mvapich2.spec | 16 +++++--- sources | 2 +- tests/run_tests.sh | 10 +++++ tests/sanity.sh | 17 ++++++++ tests/tests.yml | 12 ++++++ 7 files changed, 90 insertions(+), 7 deletions(-) create mode 100644 0001-mvapich23-unbundle-contrib-hwloc-and-osu_benchmarks.patch create mode 100755 tests/run_tests.sh create mode 100755 tests/sanity.sh create mode 100644 tests/tests.yml diff --git a/.gitignore b/.gitignore index 24a5384..ffb8337 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ SOURCES/mvapich2-2.3.6.tar.gz /mvapich2-2.3.6.tar.gz +/mvapich2-2.3.7-1.tar.gz diff --git a/0001-mvapich23-unbundle-contrib-hwloc-and-osu_benchmarks.patch b/0001-mvapich23-unbundle-contrib-hwloc-and-osu_benchmarks.patch new file mode 100644 index 0000000..66aaf4d --- /dev/null +++ b/0001-mvapich23-unbundle-contrib-hwloc-and-osu_benchmarks.patch @@ -0,0 +1,39 @@ +From 1dc75ee70e44d3dea69392f7e6eca5913d5ef143 Mon Sep 17 00:00:00 2001 +From: Kamal Heib +Date: Mon, 5 Jun 2023 10:05:38 -0400 +Subject: [PATCH] mvapich23: unbundle contrib/hwloc and osu_benchmarks + +Signed-off-by: Kamal Heib +--- + Makefile.in | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index ced43d104194..eab3cfacf5c4 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -3050,14 +3050,14 @@ bin_PROGRAMS = $(am__EXEEXT_1) src/env/mpichversion$(EXEEXT) \ + @BUILD_F77_BINDING_TRUE@@BUILD_PROFILING_LIB_TRUE@am__append_184 = -DMPICH_MPI_FROM_PMPI -DUSE_ONLY_MPI_NAMES + @BUILD_F77_BINDING_TRUE@@BUILD_FC_BINDING_TRUE@am__append_185 = $(mpi_fc_sources) + @BUILD_CXX_BINDING_TRUE@am__append_186 = lib/lib@MPICXXLIBNAME@.la +-@BUILD_HWLOC_v1_TRUE@@BUILD_OSU_MVAPICH_TRUE@am__append_187 = contrib/hwloc_v1 +-@BUILD_HWLOC_v1_FALSE@@BUILD_OSU_MVAPICH_TRUE@am__append_188 = contrib/hwloc_v2 ++@BUILD_HWLOC_v1_TRUE@@BUILD_OSU_MVAPICH_TRUE@am__append_187 = ++@BUILD_HWLOC_v1_FALSE@@BUILD_OSU_MVAPICH_TRUE@am__append_188 = + @BUILD_OSU_MVAPICH_TRUE@am__append_189 = src/env/mpiname src/util/mv2_ckpt_rebuild +-@BUILD_OMB_TRUE@@BUILD_OSU_MVAPICH_TRUE@am__append_190 = osu_benchmarks +-@BUILD_HWLOC_v1_TRUE@@BUILD_OSU_MVAPICH_TRUE@am__append_191 = -Icontrib/hwloc_v1/include/ -I$(top_srcdir)/contrib/hwloc_v1/include +-@BUILD_HWLOC_v1_TRUE@@BUILD_OSU_MVAPICH_TRUE@am__append_192 = contrib/hwloc_v1/src/libhwloc_embedded.la +-@BUILD_HWLOC_v1_FALSE@@BUILD_OSU_MVAPICH_TRUE@am__append_193 = -Icontrib/hwloc_v2/include/ -I$(top_srcdir)/contrib/hwloc_v2/include +-@BUILD_HWLOC_v1_FALSE@@BUILD_OSU_MVAPICH_TRUE@am__append_194 = contrib/hwloc_v2/hwloc/libhwloc_embedded.la ++@BUILD_OMB_TRUE@@BUILD_OSU_MVAPICH_TRUE@am__append_190 = ++@BUILD_HWLOC_v1_TRUE@@BUILD_OSU_MVAPICH_TRUE@am__append_191 = ++@BUILD_HWLOC_v1_TRUE@@BUILD_OSU_MVAPICH_TRUE@am__append_192 = -lhwloc ++@BUILD_HWLOC_v1_FALSE@@BUILD_OSU_MVAPICH_TRUE@am__append_193 = ++@BUILD_HWLOC_v1_FALSE@@BUILD_OSU_MVAPICH_TRUE@am__append_194 = -lhwloc + @BUILD_COVERAGE_TRUE@am__append_195 = coverage-clean + subdir = . + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +-- +2.40.1 + diff --git a/mvapich2.spec b/mvapich2.spec index 17b1fcd..d6a37cc 100644 --- a/mvapich2.spec +++ b/mvapich2.spec @@ -1,7 +1,8 @@ %{!?python3_sitearch: %global python3_sitearch %(%{__python3} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} Name: mvapich2 -Version: 2.3.6 +%global upstream_ver 2.3.7-1 +Version: %{lua: print((string.gsub(rpm.expand("%{upstream_ver}"),"-",".")))} Release: 1%{?dist} Summary: OSU MVAPICH2 MPI package Group: Development/Libraries @@ -18,13 +19,12 @@ Group: Development/Libraries ## other than LGPL). License: BSD and MIT URL: http://mvapich.cse.ohio-state.edu -Source: http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/%{name}-%{version}.tar.gz +Source: http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-2.3.7-1.tar.gz Source1: mvapich2.module.in Source2: mvapich2.macros.in # We delete bundled stuff in the prep step. The *-unbundle-* patches adjust # the configure scripts and Makefiles accordingly. -Patch1: 0001-mvapich23-unbundle-contrib-hwloc.patch -Patch2: 0002-mvapich23-unbundle-osu_benchmarks.patch +Patch1: 0001-mvapich23-unbundle-contrib-hwloc-and-osu_benchmarks.patch BuildRequires: gcc-gfortran BuildRequires: libibumad-devel, libibverbs-devel >= 1.1.3, librdmacm-devel @@ -91,9 +91,8 @@ Contains development headers and libraries for %{name}-psm2. %endif %prep -%setup -q +%setup -q -n %{name}-%{upstream_ver} %patch1 -p1 -%patch2 -p1 # bundled hwloc, knem kernel module rm -r contrib/ # limic kernel module @@ -346,6 +345,11 @@ cd .. %changelog +* Mon Jun 05 2023 Kamal Heib - 2.3.7.1-1 +- Update to upstream release 2.3.7-1 +- Add gating tests +- Resolves: rhbz#2212462 + * Thu May 13 2021 Honggang Li - 2.3.6-1 - Update to upstream stable point release v2.3.6 - Resolves: rhbz#1960073 diff --git a/sources b/sources index d007278..71445b7 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (mvapich2-2.3.6.tar.gz) = 9b76b0d2619a9e448165a098da962896f4eecce183cc75a85f16b0249f565f537b1551bfca00eb4cd94d80dc4de9ee603623137612388b1389237f984e08ee67 +SHA512 (mvapich2-2.3.7-1.tar.gz) = 27e3f2018f205e97ea46d5474cc382e08af2cdf165b484dcd5bce602ce8800807798db913b6aed056fb09b9f0f45ab4188141d7fa074ee5ce55b0b7d207dcd50 diff --git a/tests/run_tests.sh b/tests/run_tests.sh new file mode 100755 index 0000000..11017ab --- /dev/null +++ b/tests/run_tests.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +# when running this in 1minutetip the PATH must be specified to execute +# in the local directory. +echo "Setting path to local directory" +PATH=$PATH:$(pwd) + +# simple sanity test +sanity.sh +exit $? diff --git a/tests/sanity.sh b/tests/sanity.sh new file mode 100755 index 0000000..c7a4900 --- /dev/null +++ b/tests/sanity.sh @@ -0,0 +1,17 @@ +#!/bin/bash +# +# This is a simple sanity test to satisfy the RHEL8.1 onboard gating +# requirement. + +ret=$? +source /etc/profile.d/modules.sh + +module load mpi/mvapich2-x86_64 + +mpichversion +let ret=$ret+$? + +mpirun hostname +let ret=$ret+$? + +exit $ret diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100644 index 0000000..945c98c --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,12 @@ +- hosts: localhost + roles: + - role: standard-test-basic + tags: + - classic + tests: + - simple: + dir: . # switch to subfolder. This parameter is REQUIRED, use `dir: .` for current folder + run: ./run_tests.sh # this is your test command, its exit code is the outcome of the test + required_packages: + - environment-modules + - mvapich2