Skip to content
Open
Show file tree
Hide file tree
Changes from all 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
1 change: 1 addition & 0 deletions .github/workflows/sycl-linux-precommit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ on:
- '.github/workflows/sycl-rel-nightly-launch.yml'
- '.github/workflows/sycl-trivy.yml'
- '.github/workflows/sycl-coverity.yml'
- '.github/workflows/sycl-weekly.yml'
- 'devops/containers/**'
- 'devops/actions/build_container/**'
- 'unified-runtime/examples/**'
Expand Down
32 changes: 32 additions & 0 deletions .github/workflows/sycl-weekly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,3 +72,35 @@
toolchain_artifact_filename: ${{ needs.ubuntu2204_build.outputs.toolchain_artifact_filename }}
toolchain_decompress_command: ${{ needs.ubuntu2204_build.outputs.toolchain_decompress_command }}
binaries_artifact: sycl_cts_bin

yarpgen:
if: ${{ !cancelled() }}
runs-on: [Linux, build]
container:
# This workflow runs on Sundays, so in almost all cases there are no new
# commits on Saturday, and therefore the latest nightly can be used.
# TODO: Consider switching sycl-cts run to nightly build.
image: ghcr.io/intel/llvm/sycl_ubuntu2404_nightly:latest
# Is it the minimum set of options to get a working toolchain?
options: -u 1001 --device=/dev/dri -v /dev/dri/by-path:/dev/dri/by-path --privileged --cap-add SYS_ADMIN
steps:
- name: Set up yarpgen
run: |
git clone https://github.com/intel/yarpgen.git
cmake -B yarpgen/build -G Ninja yarpgen/
ninja -C yarpgen/build
- name: Run yarpgen
run: |
cd yarpgen
# A system hits OOM when using all available threads.
python3 scripts/run_gen.py --target clang -j4
Copy link
Contributor

Choose a reason for hiding this comment

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

For how long does it run by default? I suggest we set the duration here explicitly

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It takes just 10 minutes with this amount of jobs. I'm not sure if more jobs reduce the time or even increase:D

Copy link
Contributor Author

Choose a reason for hiding this comment

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

You mean to set the time limit for this job?

Copy link
Contributor

Choose a reason for hiding this comment

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

You mean to set the time limit for this job?

I mean yarpgen can continue generating and trying programs indefinitely, if you say it so. My point was to pass -t/--timeout parameter explicitly to better indicate the intent here and don't depend on a default which might change

- name: Pack results
run: tar -czf yarpgen_results.tar.gz yarpgen/testing
Copy link
Contributor

Choose a reason for hiding this comment

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

I hope results aren't too huge. If they are, we can consider shorter retention policy if no issues were discovered

Copy link
Contributor Author

@KornevNikita KornevNikita Dec 5, 2025

Choose a reason for hiding this comment

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

The archive takes just 1mb, as I understand without Intel SDE there are not many compiled programs. The issue is I have no idea how to download Intel SDE via console.

- uses: actions/upload-artifact@v5
with:
name: yarpgen_results
path: yarpgen_results.tar.gz
retention-days: 7
- name: Clean up
Copy link
Contributor

Choose a reason for hiding this comment

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

I would like this job to somehow report the fuzzing outcome. The tool does print some summary, but there are also errors which should not be considered as problems. For example, when a generated kernel uses too many arguments and they exceed implementation limits.

if: always()
run: rm -rf yarpgen yarpgen_results.tar.gz
1 change: 1 addition & 0 deletions .github/workflows/sycl-windows-precommit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ on:
- '.github/workflows/sycl-rel-nightly-launch.yml'
- '.github/workflows/sycl-trivy.yml'
- '.github/workflows/sycl-coverity.yml'
- '.github/workflows/sycl-weekly.yml'
- 'devops/containers/**'
- 'devops/actions/build_container/**'
- 'devops/compat_ci_exclude.sycl-rel-6_2'
Expand Down
Loading