Skip to content

Commit e60d694

Browse files
lslusarczykMikolaj Komar
andauthored
running CI on CPU and public runners (#822)
* running CI on CPU and public runners --------- Co-authored-by: Mikolaj Komar <[email protected]>
1 parent ec30704 commit e60d694

File tree

5 files changed

+47
-21
lines changed

5 files changed

+47
-21
lines changed

.github/workflows/pr.yml

Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,9 @@ jobs:
6666
# build/examples/mp/*.log
6767

6868
pvc_unit_tests:
69-
runs-on: gkpvc
70-
timeout-minutes: 30
69+
# runs-on: gkpvc
70+
runs-on: ubuntu-24.04
71+
timeout-minutes: 120
7172
strategy:
7273
# test everything, even if one fails
7374
fail-fast: false
@@ -82,18 +83,34 @@ jobs:
8283
FI_PROVIDER: tcp
8384
steps:
8485
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
86+
- name: Set up Intel APT repository
87+
run: |
88+
# https://www.intel.com/content/www/us/en/docs/oneapi/installation-guide-linux/2024-0/apt.html
89+
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB \
90+
| gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
91+
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
92+
sudo apt-get update -y
93+
- name: Install oneAPI
94+
run: sudo apt-get install intel-oneapi-compiler-dpcpp-cpp intel-oneapi-mkl-devel intel-hpckit -y
8595
- name: Generate
86-
run: cmake -B build -DCMAKE_BUILD_TYPE=${{ matrix.config }}
87-
- name: Save environment dump
88-
run: printenv > build/envdump.txt
96+
run: |
97+
. /opt/intel/oneapi/setvars.sh
98+
cmake -B build -DCMAKE_BUILD_TYPE=${{ matrix.config }}
99+
printenv > build/envdump.txt
89100
# change this step to building just tests once unittest job is back
90-
- name: Build everything
91-
run: make -C build -j
92-
# - name: Build tests
93-
# run: cmake --build build --target all-tests -- -j
101+
# - name: Build everything
102+
# run: |
103+
# . /opt/intel/oneapi/setvars.sh
104+
# make -C build -j
105+
- name: Build tests
106+
run: |
107+
. /opt/intel/oneapi/setvars.sh
108+
cmake --build build --target all-tests -- -j 4
94109
- name: Unit tests
95110
# run: srun -p cluster scripts/run_command_on_compute_node.sh build/Testing/tests.outerr.txt ctest --test-dir build -L TESTLABEL -j 4
96-
run: ctest --test-dir build -L TESTLABEL -j 4
111+
run: |
112+
. /opt/intel/oneapi/setvars.sh
113+
ctest --test-dir build --output-on-failure -L TESTLABEL -j 4
97114
- uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
98115
if: always()
99116
with:

CMakeLists.txt

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ add_custom_target(sp-all-tests)
153153
add_custom_target(all-tests DEPENDS mp-all-tests sp-all-tests)
154154

155155
function(add_mp_ctest_impl)
156-
set(options OFFLOAD GDB SYCL DRLOGS TESTLABEL)
156+
set(options OFFLOAD GDB SYCL DRLOGS TESTLABEL PVCLABEL)
157157
set(oneValueArgs NAME TEST_NAME NPROC TIMEOUT)
158158
set(multiValueArgs TARGS) # Test ARGumentS
159159

@@ -234,7 +234,10 @@ function(add_mp_ctest_impl)
234234
endif()
235235

236236
if(AMC_TESTLABEL)
237-
set_property(TEST ${AMC_TEST_NAME} PROPERTY LABELS TESTLABEL MP)
237+
set_property(TEST ${AMC_TEST_NAME} PROPERTY LABELS TESTLABEL PVCLABEL MP)
238+
endif()
239+
if(AMC_PVCLABEL)
240+
set_property(TEST ${AMC_TEST_NAME} PROPERTY LABELS PVCLABEL MP)
238241
endif()
239242
add_dependencies(mp-all-tests ${AMC_NAME})
240243
endfunction()
@@ -250,6 +253,11 @@ function(add_mp_ctest)
250253
add_mp_auxiliary_ctests(${ARGN})
251254
endfunction()
252255

256+
function(add_mp_pvc_ctest)
257+
add_mp_ctest_impl(${ARGN} PVCLABEL)
258+
add_mp_auxiliary_ctests(${ARGN})
259+
endfunction()
260+
253261
function(add_mp_disabled_ctest)
254262
add_mp_ctest_impl(${ARGN})
255263
add_mp_auxiliary_ctests(${ARGN})
@@ -370,7 +378,7 @@ endfunction()
370378

371379
function(add_sp_ctest test_name name)
372380
add_sp_disabled_ctest(${test_name} ${name} ${ARGN})
373-
set_property(TEST ${test_name} PROPERTY LABELS TESTLABEL SP)
381+
set_property(TEST ${test_name} PROPERTY LABELS TESTLABEL PVCLABEL SP)
374382
endfunction()
375383

376384
install(DIRECTORY include DESTINATION ${CMAKE_INSTALL_PREFIX})

benchmarks/gbench/sp/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ add_executable(
2525
gemm.cpp
2626
../common/distributed_vector.cpp
2727
../common/dot_product.cpp
28-
../common/inclusive_exclusive_scan.cpp
28+
# ../common/inclusive_exclusive_scan.cpp disabled due to deadlock DRA-214
2929
../common/sort.cpp
3030
../common/stream.cpp)
3131
# cmake-format: on

include/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
FetchContent_Declare(
66
dpl
77
GIT_REPOSITORY https://github.com/oneapi-src/oneDPL.git
8-
GIT_TAG 251b0b1)
8+
GIT_TAG main)
99
FetchContent_MakeAvailable(dpl)
1010

1111
# mpi: multi-process

test/gtest/mp/CMakeLists.txt

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ add_executable(
1616
../common/drop.cpp
1717
../common/enumerate.cpp
1818
../common/equal.cpp
19-
../common/exclusive_scan.cpp
19+
# ../common/exclusive_scan.cpp disabled due to deadlock - DRA-213
2020
../common/fill.cpp
2121
../common/for_each.cpp
22-
../common/inclusive_scan.cpp
22+
# ../common/inclusive_scan.cpp disabled due to deadlock - DRA-213
2323
../common/iota.cpp
2424
../common/iota_view.cpp
2525
../common/reduce.cpp
@@ -107,16 +107,17 @@ if(ENABLE_SYCL)
107107

108108
foreach(nproc RANGE 1 4)
109109
add_mp_ctest(NAME mp-quick-test NPROC ${nproc} SYCL)
110-
add_mp_ctest(
110+
add_mp_pvc_ctest(
111111
NAME mp-quick-test NPROC ${nproc} OFFLOAD SYCL TARGS --device-memory)
112112
endforeach()
113113

114-
add_mp_ctest(
114+
add_mp_pvc_ctest(
115115
NAME mp-tests NPROC 2 TIMEOUT 150 OFFLOAD SYCL TARGS --device-memory
116116
--gtest_filter=-${sycl-exclusions})
117117
if(NOT MPI_IMPL STREQUAL "openmpi")
118-
# MPI_Win_create fails for communicator with size 1
119-
add_mp_ctest(
118+
# MPI_Win_create fails for communicator with size 1 this should be
119+
# add_mp_ctest - DRA-215
120+
add_mp_pvc_ctest(
120121
NAME mp-tests NPROC 1 SYCL TARGS --gtest_filter=-${sycl-exclusions})
121122
endif()
122123
# TODO: fix sycl Slide issues, see

0 commit comments

Comments
 (0)