From c90de3cd9fb16918c1f029544b4453400e6e8dd0 Mon Sep 17 00:00:00 2001 From: Nikita Kornev Date: Fri, 23 Feb 2024 23:02:28 +0100 Subject: [PATCH] [CI] Run SYCL-CTS with the latest nightly (#12811) 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). --- .github/workflows/sycl-linux-run-tests.yml | 22 ++++++++++++++++++++-- .github/workflows/sycl-nightly.yml | 8 ++++++++ devops/cts_exclude_filter | 2 +- 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/.github/workflows/sycl-linux-run-tests.yml b/.github/workflows/sycl-linux-run-tests.yml index 59ffe39325b8e..541060845829d 100644 --- a/.github/workflows/sycl-linux-run-tests.yml +++ b/.github/workflows/sycl-linux-run-tests.yml @@ -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. @@ -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 diff --git a/.github/workflows/sycl-nightly.yml b/.github/workflows/sycl-nightly.yml index 3a741cdb221d7..f8671ff0eabdf 100644 --- a/.github/workflows/sycl-nightly.yml +++ b/.github/workflows/sycl-nightly.yml @@ -71,6 +71,13 @@ 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 }} @@ -78,6 +85,7 @@ jobs: 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: '' diff --git a/devops/cts_exclude_filter b/devops/cts_exclude_filter index e6d01fdcd61da..77b03b7366be1 100644 --- a/devops/cts_exclude_filter +++ b/devops/cts_exclude_filter @@ -18,7 +18,7 @@ vector_operators vector_swizzle_assignment vector_swizzles kernel_bundle -specialization_constants +spec_constants device_selector math_builtin_api stream