Skip to content

Commit 4b7fe3f

Browse files
committed
use oneAPI basekit instead dockers for icx/icpx tests
1 parent 0660c56 commit 4b7fe3f

File tree

1 file changed

+17
-72
lines changed

1 file changed

+17
-72
lines changed

.github/workflows/basic.yml

Lines changed: 17 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -11,78 +11,6 @@ env:
1111
UMF_VERSION: 0.1.0
1212

1313
jobs:
14-
icx-build:
15-
# TODO: we could merge ICX build with gcc/clang (using our dockers) Issue: #259
16-
name: Intel C++ Compiler
17-
strategy:
18-
matrix:
19-
build_type: [Debug, Release]
20-
compiler: [{c: icx, cxx: icpx}]
21-
shared_library: ['OFF']
22-
env:
23-
BUILD_DIR : "${{github.workspace}}/build/"
24-
INSTL_DIR : "${{github.workspace}}/../install-dir"
25-
26-
runs-on: ubuntu-22.04
27-
container:
28-
image: intel/oneapi:latest
29-
volumes:
30-
- ${{github.workspace}}:${{github.workspace}}
31-
options: "--privileged"
32-
33-
steps:
34-
- name: Checkout
35-
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
36-
37-
- name: Install apt packages
38-
run: |
39-
apt-get update
40-
apt-get install -y libnuma-dev libjemalloc-dev libtbb-dev libhwloc-dev python3-pip sudo
41-
42-
- name: Install Python requirements
43-
run: python3 -m pip install -r third_party/requirements.txt
44-
45-
- name: Set ptrace value for IPC test
46-
run: bash -c "echo 0 > /proc/sys/kernel/yama/ptrace_scope"
47-
48-
- name: Configure build
49-
run: >
50-
cmake
51-
-B build
52-
-DCMAKE_INSTALL_PREFIX="${{env.INSTL_DIR}}"
53-
-DCMAKE_BUILD_TYPE=${{matrix.build_type}}
54-
-DUMF_BUILD_SHARED_LIBRARY=${{matrix.shared_library}}
55-
-DCMAKE_C_COMPILER=${{matrix.compiler.c}}
56-
-DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}}
57-
-DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON
58-
-DUMF_FORMAT_CODE_STYLE=OFF
59-
-DUMF_DEVELOPER_MODE=ON
60-
-DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
61-
-DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
62-
-DUMF_BUILD_LIBUMF_POOL_SCALABLE=ON
63-
-DUMF_BUILD_EXAMPLES=ON
64-
-DUMF_TESTS_FAIL_ON_SKIP=ON
65-
66-
- name: Build UMF
67-
run: cmake --build build -j $(nproc)
68-
69-
- name: Run tests
70-
working-directory: ${{github.workspace}}/build
71-
run: ctest --output-on-failure --test-dir test
72-
73-
- name: Test UMF installation and uninstallation
74-
# The '--shared-library' parameter is added to the installation test when the UMF is built as a shared library
75-
run: >
76-
python3 ${{github.workspace}}/test/test_installation.py
77-
--build-dir ${{env.BUILD_DIR}}
78-
--install-dir ${{env.INSTL_DIR}}
79-
--build-type ${{matrix.build_type}}
80-
--disjoint-pool
81-
--jemalloc-pool
82-
--scalable-pool
83-
--umf-version ${{env.UMF_VERSION}}
84-
${{ matrix.shared_library == 'ON' && '--shared-library' || ''}}
85-
8614
ubuntu-build:
8715
name: Ubuntu
8816
strategy:
@@ -119,6 +47,12 @@ jobs:
11947
compiler: {c: gcc, cxx: g++}
12048
shared_library: 'OFF'
12149
level_zero_provider: 'OFF'
50+
# test icx compiler
51+
- os: 'ubuntu-22.04'
52+
build_type: Release
53+
compiler: {c: icx, cxx: icpx}
54+
shared_library: 'ON'
55+
level_zero_provider: 'ON'
12256
env:
12357
BUILD_DIR : "${{github.workspace}}/build/"
12458
INSTL_DIR : "${{github.workspace}}/../install-dir"
@@ -128,6 +62,16 @@ jobs:
12862
- name: Checkout
12963
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
13064

65+
- name: Install oneAPI basekit
66+
if: matrix.compiler.cxx == 'icpx'
67+
run: |
68+
sudo apt update
69+
sudo apt install -y gpg-agent wget
70+
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
71+
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
72+
sudo apt update
73+
sudo apt install intel-basekit
74+
13175
- name: Install apt packages
13276
run: |
13377
sudo apt-get update
@@ -145,6 +89,7 @@ jobs:
14589

14690
- name: Configure build
14791
run: >
92+
${{ matrix.compiler.cxx == 'icpx' && '. /opt/intel/oneapi/setvars.sh &&' || ''}}
14893
cmake
14994
-B ${{env.BUILD_DIR}}
15095
-DCMAKE_INSTALL_PREFIX="${{env.INSTL_DIR}}"

0 commit comments

Comments
 (0)