Skip to content

Commit d6c6120

Browse files
committed
ci: Add icx workflow
1 parent a5f56cb commit d6c6120

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

.github/workflows/pytest-core-nompi.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@ jobs:
3434
pytest-ubuntu-py39-gcc9-omp,
3535
pytest-osx-py37-clang-omp,
3636
pytest-docker-py37-gcc-omp,
37-
pytest-docker-py37-icc-omp
37+
pytest-docker-py37-icc-omp,
38+
pytest-docker-py38-icx-omp
3839
]
3940
set: [base, adjoint]
4041
include:
@@ -101,6 +102,13 @@ jobs:
101102
language: "openmp"
102103
sympy: "1.11"
103104

105+
- name: pytest-docker-py37-icx-omp
106+
python-version: '3.8'
107+
os: ubuntu-22.04
108+
arch: "icx"
109+
language: "openmp"
110+
sympy: "1.11"
111+
104112
- set: base
105113
test-set: 'not adjoint'
106114

@@ -135,7 +143,7 @@ jobs:
135143
fi
136144
id: set-run
137145

138-
- name: Install GCC ${{ matrix.arch }}
146+
- name: Install ${{ matrix.arch }} compiler
139147
if: "runner.os == 'linux' && !contains(matrix.name, 'docker')"
140148
run : |
141149
sudo apt-get install -y ${{ matrix.arch }}

devito/arch/compiler.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -552,6 +552,8 @@ def __init__(self, *args, **kwargs):
552552
self.cflags.append('-fsycl-targets=spir64')
553553

554554
if language == 'openmp':
555+
# To be switched to `-fiopenmp` or `-qopenmp` as soon as
556+
# it is fixed in the new Intel OneAPI release
555557
self.cflags.append('-fopenmp')
556558
if platform is NVIDIAX:
557559
self.cflags.append('-fopenmp-targets=nvptx64-cuda')
@@ -566,8 +568,8 @@ def __init__(self, *args, **kwargs):
566568

567569
# Make sure the MPI compiler uses `icx` underneath -- whatever the MPI distro is
568570
if kwargs.get('mpi'):
569-
ver = check_output([self.MPICC, "--version"]).decode("utf-8")
570-
if not ver.startswith("Intel(R) oneAPI"):
571+
mpi_distro = sniff_mpi_distro('mpiexec')
572+
if not mpi_distro.startswith("Intel(R) oneAPI"):
571573
warning("The MPI compiler `%s` doesn't use the Intel(R) oneAPI "
572574
"DPC++/C++ compiler underneath" % self.MPICC)
573575

0 commit comments

Comments
 (0)