Skip to content

Commit

Permalink
[CI] Run SYCL-CTS with the latest nightly (#12811)
Browse files Browse the repository at this point in the history
Add a new workflow to run SYCL-CTS when new nightly build is available.
This should help us to handle new failures in advance, monitor new
suites and so on.

To start with running only reduced scope of tests (cts_exclude_filter is
big enough) on unused "debug" runner (linux+cpu).
  • Loading branch information
KornevNikita authored Feb 23, 2024
1 parent e251621 commit c90de3c
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 3 deletions.
22 changes: 20 additions & 2 deletions .github/workflows/sycl-linux-run-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ on:
- '["Linux", "gen12"]'
- '["amdgpu"]'
- '["Linux", "arc"]'
- '["cts-cpu"]'
image:
description: |
Use option ending with ":build" for AMDGPU, ":latest" for the rest.
Expand Down Expand Up @@ -286,10 +287,27 @@ jobs:
-DDPCPP_INSTALL_DIR="$$(dirname (which clang++))/.." \
$CMAKE_EXTRA_ARGS
ninja -C build-cts
- name: SYCL CTS List devices
if: inputs.tests_selector == 'cts'
run: |
./build-cts/bin/test_all --list-devices
- name: Run SYCL CTS tests
if: inputs.tests_selector == 'cts'
env:
ONEAPI_DEVICE_SELECTOR: ${{ inputs.target_devices }}
# FIXME: For some reason the "sub_group api" test-case is failing with
# SIGSEGV while running test_all, so running each binary separately.
# BTW test_all requires a lot of resources to build it, so probably it'll
# be better to build each binary also separately.
# run: |
# ./build-cts/bin/test_all $CTS_TEST_ARGS
run: |
./build-cts/bin/test_all --list-devices
./build-cts/bin/test_all $CTS_TEST_ARGS
for i in `ls -1 ./build-cts/bin`; do
if [ "$i" != "test_all" ]; then
echo "::group::Running $i"
build-cts/bin/$i
echo "::endgroup::"
fi
done
8 changes: 8 additions & 0 deletions .github/workflows/sycl-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,13 +71,21 @@ jobs:
image: ghcr.io/intel/llvm/ubuntu2204_build:latest
image_options: -u 1001 --gpus all --cap-add SYS_ADMIN
target_devices: ext_oneapi_cuda:gpu

- name: SYCL-CTS
runner: '["cts-cpu"]'
image: ghcr.io/intel/llvm/ubuntu2204_intel_drivers:latest
image_options: -u 1001 --device=/dev/dri --privileged --cap-add SYS_ADMIN
target_devices: opencl:cpu
tests_selector: cts
uses: ./.github/workflows/sycl-linux-run-tests.yml
with:
name: ${{ matrix.name }}
runner: ${{ matrix.runner }}
image: ${{ matrix.image }}
image_options: ${{ matrix.image_options }}
target_devices: ${{ matrix.target_devices }}
tests_selector: ${{ matrix.tests_selector }}
reset_gpu: ${{ matrix.reset_gpu }}
ref: ${{ github.sha }}
merge_ref: ''
Expand Down
2 changes: 1 addition & 1 deletion devops/cts_exclude_filter
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ vector_operators
vector_swizzle_assignment
vector_swizzles
kernel_bundle
specialization_constants
spec_constants
device_selector
math_builtin_api
stream
Expand Down

0 comments on commit c90de3c

Please sign in to comment.