Skip to content

[CI] Run SYCL-CTS with the latest nightly #12811

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Feb 23, 2024
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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: [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
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we try per-source kernel splitting maybe?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will this improve compilation time for test_all?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't imagine other reasons for the slowdown...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

per-source splitting is a default mode of splitting

# 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
16 changes: 16 additions & 0 deletions .github/workflows/sycl-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,22 @@ jobs:
runner: '["Windows","gen12"]'
sycl_toolchain_archive: ${{ needs.build-win.outputs.artifact_archive_name }}

sycl-cts:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can actually merge that into the e2e matrix.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

441647a
Not sure what will be matrix.tests_selector for the rest

needs: [ubuntu2204_build]
uses: ./.github/workflows/sycl-linux-run-tests.yml
with:
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
install_drivers: false
ref: ${{ github.sha }}
sycl_toolchain_artifact: sycl_linux_default
sycl_toolchain_archive: ${{ needs.ubuntu2204_build.outputs.artifact_archive_name }}
sycl_toolchain_decompress_command: ${{ needs.ubuntu2204_build.outputs.artifact_decompress_command }}

nightly_build_upload:
name: Nightly Build Upload
if: ${{ github.ref_name == 'sycl' }}
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