From 9fea3ca6cbad587b17e769177df0d742c526c776 Mon Sep 17 00:00:00 2001 From: George Bisbas Date: Fri, 21 Jul 2023 18:11:43 +0300 Subject: [PATCH] tests: Add safe_math=True for some icx-mpi tests --- devito/arch/compiler.py | 2 +- tests/test_mpi.py | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/devito/arch/compiler.py b/devito/arch/compiler.py index a79616b906..4461d5ea5d 100644 --- a/devito/arch/compiler.py +++ b/devito/arch/compiler.py @@ -763,7 +763,7 @@ def __init__(self, *args, **kwargs): platform = kwargs.pop('platform', configuration['platform']) language = kwargs.pop('language', configuration['language']) - # Earlier to versions to OneAPI 2023.2.0 (clang17 underneath), have an OpenMP bug + # Earlier versions to OneAPI 2023.2.0 (clang17 underneath), have an OpenMP bug if self.version < Version('17.0.0') and language == 'openmp': self.ldflags.remove('-qopenmp') self.ldflags.append('-fopenmp') diff --git a/tests/test_mpi.py b/tests/test_mpi.py index a6d236a1f3..604b0d8c32 100644 --- a/tests/test_mpi.py +++ b/tests/test_mpi.py @@ -7,6 +7,7 @@ SparseTimeFunction, Dimension, ConditionalDimension, SubDimension, SubDomain, Eq, Ne, Inc, NODE, Operator, norm, inner, configuration, switchconfig, generic_derivative) +from devito.arch.compiler import OneapiCompiler from devito.data import LEFT, RIGHT from devito.ir.iet import (Call, Conditional, Iteration, FindNodes, FindSymbols, retrieve_iteration_tree) @@ -514,6 +515,8 @@ def test_scatter_gather(self): assert np.all(sf.data == data[sf.local_indices]*2) @pytest.mark.parallel(mode=4) + @switchconfig(condition=isinstance(configuration['compiler'], + (OneapiCompiler)), safe_math=True) def test_sparse_coords(self): grid = Grid(shape=(21, 31, 21), extent=(20, 30, 20)) x, y, z = grid.dimensions @@ -1492,6 +1495,8 @@ def test_injection_wodup(self): assert np.all(f.data == 1.25) @pytest.mark.parallel(mode=4) + @switchconfig(condition=isinstance(configuration['compiler'], + (OneapiCompiler)), safe_math=True) def test_injection_wodup_wtime(self): """ Just like ``test_injection_wodup``, but using a SparseTimeFunction