From 814b23daae60e37bcc79654a100ba2ba2849ea10 Mon Sep 17 00:00:00 2001 From: James Antill Date: Thu, 26 May 2022 11:48:59 -0400 Subject: [PATCH] Auto sync2gitlab import of mpitests-5.8-1.el8.src.rpm --- .gitignore | 2 + EMPTY | 1 - mpitests.spec | 212 ++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 2 + 4 files changed, 216 insertions(+), 1 deletion(-) create mode 100644 .gitignore delete mode 100644 EMPTY create mode 100644 mpitests.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..38e4235 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/IMB-v2021.3.tar.gz +/osu-micro-benchmarks-5.8.tgz diff --git a/EMPTY b/EMPTY deleted file mode 100644 index 0519ecb..0000000 --- a/EMPTY +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/mpitests.spec b/mpitests.spec new file mode 100644 index 0000000..1e24a3e --- /dev/null +++ b/mpitests.spec @@ -0,0 +1,212 @@ +%global intel_mpi_bench_vers IMB-v2021.3 +%global osu_micro_bench_vers 5.8 +Summary: MPI Benchmarks and tests +Name: mpitests +Version: 5.8 +Release: 1%{?dist} +License: CPL and BSD +Group: Applications/Engineering +# These days we get the benchmark soucres from Intel and OSU directly +# rather than from openfabrics. +URL: http://www.openfabrics.org +# https://software.intel.com/en-us/articles/intel-mpi-benchmarks +Source0: https://github.com/intel/mpi-benchmarks/archive/%{intel_mpi_bench_vers}.tar.gz +Source1: http://mvapich.cse.ohio-state.edu/download/mvapich/osu-micro-benchmarks-%{osu_micro_bench_vers}.tgz +# Only for old openmpi +#Patch101: OMB-disable-collective-async.patch +BuildRequires: hwloc-devel, libibmad-devel, rdma-core-devel +BuildRequires: automake, autoconf, libtool +BuildRequires: gcc, gcc-c++ + +%description +A set of popular MPI benchmarks: +Intel MPI benchmarks %{intel_mpi_bench_vers}. +OSU micro-benchmarks %{osu_micro_bench_vers}. + +# openmpi 3.0.0 dropped support for big endian ppc +%ifnarch ppc ppc64 +%package openmpi +Summary: MPI tests package compiled against openmpi +Group: Applications +BuildRequires: openmpi-devel >= 3.1.2-2 +Requires: openmpi%{?_isa} +%description openmpi +MPI test suite compiled against the openmpi package +%endif + +%package mpich +Summary: MPI tests package compiled against mpich +Group: Applications +BuildRequires: mpich-devel >= 3.2.1-8 +Requires: mpich%{?_isa} +%description mpich +MPI test suite compiled against the mpich package + +# mvapich2 is not yet built on s390(x) +%ifnarch s390 s390x +%package mvapich2 +Summary: MPI tests package compiled against mvapich2 +Group: Applications +BuildRequires: mvapich2-devel >= 2.3-2 +Requires: mvapich2%{?_isa} +%description mvapich2 +MPI test suite compiled against the mvapich2 package +%endif + +# PSM is x86_64-only +%ifarch x86_64 +%package mvapich2-psm2 +Summary: MPI tests package compiled against mvapich2 using OmniPath +Group: Applications +BuildRequires: mvapich2-psm2-devel >= 2.3-2 +BuildRequires: libpsm2-devel +Requires: mvapich2-psm2%{?_isa} +%description mvapich2-psm2 +MPI test suite compiled against the mvapich2 package using OmniPath +%endif + +%prep +%setup -c +%setup -T -D -a 1 +cd osu-micro-benchmarks-5.8 +cd .. + +%build +# We don't do a non-mpi version of this package, just straight to the mpi builds +export CC=mpicc +export CXX=mpicxx +export FC=mpif90 +export F77=mpif77 +export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fPIC" +export CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -fPIC" +do_build() { + mkdir build-$MPI_COMPILER + cp -al mpi-benchmarks-%{intel_mpi_bench_vers} osu-micro-benchmarks-%{osu_micro_bench_vers} build-$MPI_COMPILER + cd build-$MPI_COMPILER/mpi-benchmarks-%{intel_mpi_bench_vers} + make OPTFLAGS="%{build_cflags}" LDFLAGS="%{build_ldflags}" MPI_HOME="$MPI_HOME" all + cd ../osu-micro-benchmarks-%{osu_micro_bench_vers} + autoreconf -vif + %configure + make %{?_smp_mflags} + cd ../.. +} + +# do N builds, one for each mpi stack +%ifnarch ppc ppc64 +%{_openmpi_load} +do_build +%{_openmpi_unload} +%endif + +%{_mpich_load} +do_build +%{_mpich_unload} + +%ifnarch s390 s390x +%{_mvapich2_load} +do_build +%{_mvapich2_unload} + +%endif + +%ifarch x86_64 +%{_mvapich2_psm2_load} +do_build +%{_mvapich2_psm2_unload} +%endif + +%install +do_install() { + mkdir -p %{buildroot}$MPI_BIN + cd build-$MPI_COMPILER/osu-micro-benchmarks-%{osu_micro_bench_vers} + make install DESTDIR=%{buildroot}/staging + find %{buildroot}/staging -name 'osu_*' -type f -perm -111 | while read X; do + mv $X %{buildroot}$MPI_BIN/mpitests-$(basename $X) + done + cd ../mpi-benchmarks-%{intel_mpi_bench_vers}/ + for X in IMB-*; do + cp $X %{buildroot}$MPI_BIN/mpitests-$X + done + cd ../.. +} + +# do N installs, one for each mpi stack +%ifnarch ppc ppc64 +%{_openmpi_load} +do_install +%{_openmpi_unload} +%endif + +%{_mpich_load} +do_install +%{_mpich_unload} + +%ifnarch s390 s390x +%{_mvapich2_load} +do_install +%{_mvapich2_unload} +%endif + +%ifarch x86_64 +%{_mvapich2_psm2_load} +do_install +%{_mvapich2_psm2_unload} +%endif + +%ifnarch ppc ppc64 +%files openmpi +%{_libdir}/openmpi/bin/mpitests-* +%endif + +%files mpich +%{_libdir}/mpich/bin/mpitests-* + +%ifnarch s390 s390x +%files mvapich2 +%{_libdir}/mvapich2/bin/mpitests-* +%endif + +%ifarch x86_64 +%files mvapich2-psm2 +%{_libdir}/mvapich2-psm2/bin/mpitests-* +%endif + +%changelog +* Fri Dec 10 2021 Honggang Li - 5.8-1 +- Update OSU benchmarks to upstream release 5.8 +- Update Intel MPI Benchmarks 2021.3 +- Resolves: rhbz#2008517 + +* Thu May 13 2021 Honggang Li - 5.7-2 +- Update OSU benchmarks to upstream release 5.7.1 +- Update Intel MPI Benchmarks 2021.2 +- Resolves: rhbz#1960078 + +* Tue Dec 22 2020 Honggang Li - 5.7-1 +- Update OSU benchmarks to upstream release 5.7 +- Resolves: rhbz#1909632 + +* Thu Oct 15 2020 Honggang Li - 5.6.3-1 +- Update OSU benchmarks to upstream release 5.6.3 +- Resolves: rhbz#1888568 + +* Tue May 12 2020 Honggang Li - 5.6.2-1 +- Update OSU benchmarks to upstream release 5.6.2 +- Update IMB benchmarks to upstream release v2019.6 +- Resolves: rhbz#1817837 + +* Sat Sep 22 2018 Jarod Wilson - 5.4.2-4 +- Properly fix build and linker flags, annocheck now silent +- Resolves: rhbz#1624145 + +* Tue Sep 18 2018 Jarod Wilson - 5.4.2-3 +- First wave of compiler flag usage fixups from annobin scans +- Related: rhbz#1624145 + +* Thu Sep 13 2018 Jarod Wilson - 5.4.2-2 +- Rebuild with updated openmpi, mvapich and mpich for proper deps +- Resolves: rhbz#1628627 + +* Thu Aug 16 2018 Jarod Wilson - 5.4.2-1 +- Initial build for RHEL8, based on latest RHEL7 package +- Resolves: rhbz#1556959 diff --git a/sources b/sources new file mode 100644 index 0000000..33b6987 --- /dev/null +++ b/sources @@ -0,0 +1,2 @@ +SHA512 (IMB-v2021.3.tar.gz) = fdb1a2426b5999c58c5d15228c64a80f28f4051d438e86a132f0fc42c3cda88f0e1bbcb792316617864d0f4d07d89143a96f3824bd4806fc8cde3c2dcb1d4094 +SHA512 (osu-micro-benchmarks-5.8.tgz) = 349f4cbc768814a54add6a135fde7efde117eb108763c888879b9b3c45d4395e819f044d4705776a57f49790b4c90117ebaa86f9bf5802dc5f9f48e9f92a6a07