Skip to content

Commit b5b9813

Browse files
authored
[CI] Move nightly SYCL benchmarking into a separate workflow (#19280)
Performance of SYCL has regressed a lot recently, causing nightly to fail consistently. However, if nightly is constantly failing, people may start to ignore nightly. #18766 should help with the amount of failures, but I am still figuring out the best parameters to use here, and additionally often times regressions are caused by driver changes, which is out of intel/llvm's control. Thus, for future's sake, it might be best to move benchmarking out of sycl-nightly.yml. This PR moves nightly benchmarking into its own workflow/nightly job, 1hr before sycl-nightly.yml, in order to reduce the amount of failures in sycl nightly.
1 parent badd00a commit b5b9813

File tree

2 files changed

+44
-34
lines changed

2 files changed

+44
-34
lines changed
Lines changed: 44 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,50 @@
11
name: SYCL Nightly Benchmarking
22

3-
# Placeholder workflow for testing https://github.com/intel/llvm/pull/19280
43
on:
54
workflow_dispatch:
5+
schedule:
6+
- cron: '0 2 * * *'
7+
8+
permissions: read-all
69

710
jobs:
8-
do-nothing:
9-
runs-on: ubuntu-latest
10-
steps:
11-
- run: echo "Test workflow for 19280"
11+
ubuntu2204_build:
12+
if: github.repository == 'intel/llvm'
13+
uses: ./.github/workflows/sycl-linux-build.yml
14+
secrets: inherit
15+
with:
16+
build_cache_root: "/__w/"
17+
build_artifact_suffix: default
18+
build_configure_extra_args: '--no-assertions'
19+
build_image: ghcr.io/intel/llvm/ubuntu2404_build:latest
20+
artifact_archive_name: sycl_linux.tar.gz
21+
22+
run-sycl-benchmarks:
23+
needs: [ubuntu2204_build]
24+
if: ${{ always() && !cancelled() && needs.ubuntu2204_build.outputs.build_conclusion == 'success' }}
25+
strategy:
26+
fail-fast: false
27+
matrix:
28+
runner: ['["PVC_PERF"]', '["BMG_PERF"]']
29+
backend: ['level_zero:gpu', 'level_zero_v2:gpu']
30+
include:
31+
- ref: ${{ github.sha }}
32+
save_name: 'Baseline'
33+
preset: 'Minimal'
34+
uses: ./.github/workflows/sycl-linux-run-tests.yml
35+
secrets: inherit
36+
with:
37+
name: Run compute-benchmarks (${{ matrix.runner }}, ${{ matrix.backend }})
38+
runner: ${{ matrix.runner }}
39+
image: ghcr.io/intel/llvm/sycl_ubuntu2404_nightly:latest
40+
image_options: -u 1001 --device=/dev/dri -v /dev/dri/by-path:/dev/dri/by-path --privileged --cap-add SYS_ADMIN
41+
target_devices: ${{ matrix.backend }}
42+
tests_selector: benchmarks
43+
benchmark_upload_results: true
44+
benchmark_save_name: ${{ matrix.save_name }}
45+
benchmark_preset: ${{ matrix.preset }}
46+
repo_ref: ${{ matrix.ref }}
47+
sycl_toolchain_artifact: sycl_linux_default
48+
sycl_toolchain_archive: ${{ needs.ubuntu2204_build.outputs.artifact_archive_name }}
49+
sycl_toolchain_decompress_command: ${{ needs.ubuntu2204_build.outputs.artifact_decompress_command }}
50+

.github/workflows/sycl-nightly.yml

Lines changed: 0 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -280,35 +280,6 @@ jobs:
280280
sycl_toolchain_archive: ${{ needs.build-win.outputs.artifact_archive_name }}
281281
sycl_cts_artifact: sycl_cts_bin_win
282282

283-
run-sycl-benchmarks:
284-
needs: [ubuntu2204_build]
285-
if: ${{ always() && !cancelled() && needs.ubuntu2204_build.outputs.build_conclusion == 'success' }}
286-
strategy:
287-
fail-fast: false
288-
matrix:
289-
runner: ['["PVC_PERF"]', '["BMG_PERF"]']
290-
backend: ['level_zero:gpu', 'level_zero_v2:gpu']
291-
include:
292-
- ref: ${{ github.sha }}
293-
save_name: 'Baseline'
294-
preset: 'Minimal'
295-
uses: ./.github/workflows/sycl-linux-run-tests.yml
296-
secrets: inherit
297-
with:
298-
name: Run compute-benchmarks (${{ matrix.runner }}, ${{ matrix.backend }})
299-
runner: ${{ matrix.runner }}
300-
image: ghcr.io/intel/llvm/sycl_ubuntu2404_nightly:latest
301-
image_options: -u 1001 --device=/dev/dri -v /dev/dri/by-path:/dev/dri/by-path --privileged --cap-add SYS_ADMIN
302-
target_devices: ${{ matrix.backend }}
303-
tests_selector: benchmarks
304-
benchmark_upload_results: true
305-
benchmark_save_name: ${{ matrix.save_name }}
306-
benchmark_preset: ${{ matrix.preset }}
307-
repo_ref: ${{ matrix.ref }}
308-
sycl_toolchain_artifact: sycl_linux_default
309-
sycl_toolchain_archive: ${{ needs.ubuntu2204_build.outputs.artifact_archive_name }}
310-
sycl_toolchain_decompress_command: ${{ needs.ubuntu2204_build.outputs.artifact_decompress_command }}
311-
312283
nightly_build_upload:
313284
name: Nightly Build Upload
314285
if: ${{ github.ref_name == 'sycl' }}

0 commit comments

Comments
 (0)