Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package gromacs for openSUSE:Factory checked 
in at 2022-12-25 15:15:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gromacs (Old)
 and      /work/SRC/openSUSE:Factory/.gromacs.new.1563 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gromacs"

Sun Dec 25 15:15:02 2022 rev:55 rq:1045250 version:2022.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/gromacs/gromacs.changes  2022-11-09 
12:57:21.972324500 +0100
+++ /work/SRC/openSUSE:Factory/.gromacs.new.1563/gromacs.changes        
2022-12-25 15:15:24.489561633 +0100
@@ -1,0 +2,12 @@
+Sun Dec 25 01:29:31 UTC 2022 - Stefan Brüns <[email protected]>
+
+- Exclude MPI flavor on 32 bit architectures, as MPI communication
+  does not work correctly.
+
+-------------------------------------------------------------------
+Mon Nov  7 19:15:18 UTC 2022 - Stefan Brüns <[email protected]>
+
+- Fix aarch64 build on 15.x, add relax_test_tolerance.patch
+- Relax memory and disk constraints
+
+-------------------------------------------------------------------

New:
----
  relax_test_tolerance.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gromacs.spec ++++++
--- /var/tmp/diff_new_pack.F6gvsv/_old  2022-12-25 15:15:25.325566364 +0100
+++ /var/tmp/diff_new_pack.F6gvsv/_new  2022-12-25 15:15:25.329566388 +0100
@@ -43,7 +43,9 @@
 %else
 %bcond_with    opencl
 %endif
+
 %bcond_with tinyxml2
+%bcond_without tests
 
 Name:           gromacs%{?with_mpi:-openmpi}
 Version:        2022.3
@@ -56,7 +58,8 @@
 Source0:        ftp://ftp.gromacs.org/pub/gromacs/gromacs-%{uversion}.tar.gz
 Source1:        ftp://ftp.gromacs.org/pub/manual/manual-%{uversion}.pdf
 Source2:        
ftp://ftp.gromacs.org/regressiontests/regressiontests-%{uversion}.tar.gz
-
+# PATCH-FIX-UPSTREAM
+Patch0:         
https://gitlab.com/gromacs/gromacs/-/commit/0ccdf623928dfe1ce04aa7a8995a5403feaa8a5e.patch#/relax_test_tolerance.patch
 BuildRequires:  cmake >= 3.13.0
 BuildRequires:  fdupes
 BuildRequires:  gcc-c++
@@ -77,6 +80,10 @@
 BuildRequires:  (pkgconfig(tinyxml2) > 3.0 with pkgconfig(tinyxml2) < 7)
 %endif
 Requires:       gromacs-data = %{version}
+%if %{with mpi}
+# MPI communication fails on 32bit architectures
+ExcludeArch:    %{ix86} %{arm} ppc
+%endif
 
 %description
 GROMACS is a package to perform molecular dynamics computer
@@ -170,8 +177,10 @@
 This package contains data files for gromacs.
 
 %prep
-%autosetup -n gromacs-%{uversion}
+%autosetup -n gromacs-%{uversion} -p1
 tar -xzf %{S:2}
+# Force same behavior on 32 and 64 bit archs
+sed -i -e '/set(CMAKE_BUILD_WITH_INSTALL_RPATH/ s@.*@# \0@' CMakeLists.txt
 
 %build
 %if %{with mpi}
@@ -185,8 +194,8 @@
 %define acce None
 %endif
 
-# regression are currently broken on i686, 
https://redmine.gromacs.org/issues/2584
-# and cannot be used with GMX_BUILD_MDRUN_ONLY=ON
+# Avoid oversubscription, some tests run with 2 Ranks locally
+export MAX_TEST_THREADS=$(( %_smp_build_ncpus / 2 ))
 %cmake \
   -DGMX_VERSION_STRING_OF_FORK=openSUSE \
   -DCMAKE_INSTALL_PREFIX=%{_prefix} \
@@ -197,7 +206,7 @@
   -DCMAKE_SKIP_RPATH=OFF \
   -DCMAKE_SKIP_INSTALL_RPATH=ON \
   -DGMX_BUILD_UNITTESTS:BOOL=ON \
-  -DGMX_EXTERNAL_TINYXML2:BOOL=OFF \
+  -DGMX_EXTERNAL_TINYXML2:BOOL=%{?with_tinyxml:ON}%{!?with_tinyxml:OFF} \
   -DGMX_EXTERNAL_ZLIB:BOOL=ON \
   -DGMX_USE_MUPARSER=EXTERNAL \
   -DGMX_SIMD=%{acce} \
@@ -212,10 +221,8 @@
 %endif
   -DGMX_OPENMP=ON \
   -DGMX_INSTALL_LEGACY_API=ON \
-%ifnarch %{ix86} %{arm}
   
-DREGRESSIONTEST_PATH="%{_builddir}/gromacs-%{uversion}/regressiontests-%{uversion}"
 \
-  -DGMX_TEST_NUMBER_PROCS=$(( %_smp_build_ncpus / 2 )) \
-%endif
+  -DGMX_TEST_NUMBER_PROCS=${MAX_TEST_THREADS} \
   %{nil}
 %cmake_build
 %cmake_build tests
@@ -250,16 +257,22 @@
 
 rm -f %{buildroot}%{_bindir}/gmx-completion*
 
-%fdupes -s %{buildroot}
+%fdupes %{buildroot}%{_datadir}/gromacs
 
 %check
-#s390x is too slow for tests
-# gmock based tests don't work on i586
-%ifnarch s390x %{ix86}
-%ctest --exclude-regex 'physicalvalidationtests|regression|2Rank|TwoRanks' 
%{?with_mpi:--parallel 1}
+%if %{with tests}
+%ifarch %{ix86}
+# Precision problems on x86, https://gitlab.com/gromacs/gromacs/-/issues/2584
+export GTEST_FILTER=:-LinearChainDataFixture:Polarize/ListedForcesTest
+%endif
+%ctest --exclude-regex 'physicalvalidationtests|regression|2Rank|TwoRanks'
 # Each OneRank/TwoRanks test pair uses the same temporary files, run separately
-%ctest --tests-regex '2Rank|TwoRanks' %{?with_mpi:--parallel 1}
-%ctest --tests-regex regression --parallel 1
+%ctest --tests-regex '2Rank|TwoRanks'
+%ifarch %{ix86}
+  %ctest --tests-regex regression --exclude-regex regressiontests/complex 
--parallel 1
+%else
+  %ctest --tests-regex regression --parallel 1
+%endif
 %endif
 
 %post   -n %{libname_gromacs} -p /sbin/ldconfig

++++++ _constraints ++++++
--- /var/tmp/diff_new_pack.F6gvsv/_old  2022-12-25 15:15:25.365566591 +0100
+++ /var/tmp/diff_new_pack.F6gvsv/_new  2022-12-25 15:15:25.369566614 +0100
@@ -1,14 +1,12 @@
 <?xml version="1.0"?>
 <constraints>
   <hardware>
-    <physicalmemory>
-      <size unit="G">8</size>
-    </physicalmemory>
+    <memory>
+      <size unit="G">5</size>
+    </memory>
     <disk>
-      <size unit="G">20</size>
+      <size unit="G">4</size>
     </disk>
   </hardware>
-  <sandbox>kvm</sandbox>
-  <hostlabel exclude="true">SLOW_CPU</hostlabel>
 </constraints>
 

++++++ relax_test_tolerance.patch ++++++
>From 0ccdf623928dfe1ce04aa7a8995a5403feaa8a5e Mon Sep 17 00:00:00 2001
From: Mark Abraham <[email protected]>
Date: Thu, 13 Oct 2022 18:39:00 +0000
Subject: [PATCH] Relax arbitrary test tolerances.

This is now in line with the fix also made for #3836

Fixes #4290
---
 src/programs/mdrun/tests/energycomparison.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/programs/mdrun/tests/energycomparison.cpp 
b/src/programs/mdrun/tests/energycomparison.cpp
index 940f2f9d69..2d25b2fe02 100644
--- a/src/programs/mdrun/tests/energycomparison.cpp
+++ b/src/programs/mdrun/tests/energycomparison.cpp
@@ -66,8 +66,8 @@ namespace test
 EnergyTermsToCompare EnergyComparison::defaultEnergyTermsToCompare()
 {
     return {
-        { interaction_function[F_EPOT].longname, relativeToleranceAsUlp(10.0, 
50) },
-        { interaction_function[F_EKIN].longname, relativeToleranceAsUlp(10.0, 
50) },
+        { interaction_function[F_EPOT].longname, 
relativeToleranceAsPrecisionDependentUlp(60.0, 200, 160) },
+        { interaction_function[F_EKIN].longname, 
relativeToleranceAsPrecisionDependentUlp(60.0, 200, 160) },
         // The pressure is very strongly affected by summation errors,
         // so we need a large tolerance.
         // The value of 17000 is calibrated for running a small water box for 
16 steps.
-- 
GitLab

Reply via email to