Skip to content
Draft
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-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,7 @@ jobs:
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DLLVM_INSTALL_UTILS=ON \
-DSYCL_UR_FORCE_FETCH_LEVEL_ZERO=ON
# DSYCL_UR_USE_LEVEL_ZERO_V2=1
- name: Compile
id: build
# Emulate default value for manual dispatch as we've run out of available arguments.
Expand Down
221 changes: 113 additions & 108 deletions .github/workflows/sycl-linux-precommit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,39 +69,39 @@ jobs:

# Build and run native cpu e2e tests separately as cannot currently
# build all the e2e tests
build_run_native_cpu_e2e_tests:
if: ${{ !cancelled() && needs.build.outputs.build_conclusion == 'success' }}
runs-on: [Linux, build]
needs: [build]
container:
image: ghcr.io/intel/llvm/sycl_ubuntu2404_nightly:latest
options: -u 1001:1001
steps:
- uses: actions/checkout@v5
with:
sparse-checkout: |
devops/
# build_run_native_cpu_e2e_tests:
# if: ${{ !cancelled() && needs.build.outputs.build_conclusion == 'success' }}
# runs-on: [Linux, build]
# needs: [build]
# container:
# image: ghcr.io/intel/llvm/sycl_ubuntu2404_nightly:latest
# options: -u 1001:1001
# steps:
# - uses: actions/checkout@v5
# with:
# sparse-checkout: |
# devops/

# download build artefact
- name: Download toolchain
uses: actions/download-artifact@v6
with:
name: sycl_linux_default
- name: Extract SYCL toolchain
shell: bash
run: |
mkdir toolchain
tar -xf llvm_sycl.tar.zst -C toolchain
rm llvm_sycl.tar.zst
- name: Build and run E2E tests
uses: ./devops/actions/run-tests/e2e
with:
ref: ${{ inputs.ref || github.sha }}
testing_mode: full
target_devices: native_cpu:cpu
sycl_compiler: $GITHUB_WORKSPACE/toolchain/bin/clang++
extra_lit_opts: --param sycl_build_targets="native_cpu"
extra_cmake_args: -DSYCL_TEST_E2E_TARGETS="native_cpu:cpu" -DSYCL_TEST_E2E_STANDALONE=ON
# # download build artefact
# - name: Download toolchain
# uses: actions/download-artifact@v6
# with:
# name: sycl_linux_default
# - name: Extract SYCL toolchain
# shell: bash
# run: |
# mkdir toolchain
# tar -xf llvm_sycl.tar.zst -C toolchain
# rm llvm_sycl.tar.zst
# - name: Build and run E2E tests
# uses: ./devops/actions/run-tests/e2e
# with:
# ref: ${{ inputs.ref || github.sha }}
# testing_mode: full
# target_devices: native_cpu:cpu
# sycl_compiler: $GITHUB_WORKSPACE/toolchain/bin/clang++
# extra_lit_opts: --param sycl_build_targets="native_cpu"
# extra_cmake_args: -DSYCL_TEST_E2E_TARGETS="native_cpu:cpu" -DSYCL_TEST_E2E_STANDALONE=ON

# If a PR changes CUDA adapter, run the build on Ubuntu 22.04 as well.
# Ubuntu 22.04 container has CUDA 12.1 installed while Ubuntu 24.0 image
Expand Down Expand Up @@ -151,44 +151,49 @@ jobs:
fail-fast: false
matrix:
include:
- name: Intel / GEN 12 Integrated
runner: '["Linux", "gen12"]'
target_devices: level_zero:gpu;opencl:gpu;opencl:cpu
- name: NVIDIA/CUDA
runner: '["Linux", "cuda"]'
image_options: -u 1001 --gpus all --cap-add SYS_ADMIN
target_devices: cuda:gpu
- name: AMD/HIP
runner: '["Linux", "amdgpu"]'
image_options: -u 1001 --device=/dev/dri --device=/dev/kfd
target_devices: hip:gpu
extra_lit_opts: -j 1
- name: Intel / Arc A-Series Graphics
runner: '["Linux", "arc"]'
target_devices: level_zero:gpu;opencl:gpu;level_zero_v2:gpu
- name: Intel Dev IGC / Arc A-Series Graphics
runner: '["Linux", "arc"]'
image: ghcr.io/intel/llvm/ubuntu2404_intel_drivers:devigc
target_devices: level_zero:gpu
use_igc_dev: true
env: '{"LIT_FILTER":"Matrix/"}'
- name: Intel / Ponte Vecchio GPU
runner: '["Linux", "pvc"]'
target_devices: level_zero:gpu;opencl:gpu;level_zero_v2:gpu
- name: Intel Dev IGC / Ponte Vecchio GPU
runner: '["Linux", "pvc"]'
image: ghcr.io/intel/llvm/ubuntu2404_intel_drivers:devigc
target_devices: level_zero:gpu
use_igc_dev: true
env: '{"LIT_FILTER":"Matrix/"}'
- name: Intel / Battlemage Graphics
runner: '["Linux", "bmg"]'
target_devices: level_zero_v1:gpu;level_zero_v2:gpu
- name: Preview Mode
runner: '["Linux", "gen12"]'
target_devices: level_zero:gpu;opencl:gpu;opencl:cpu
extra_lit_opts: --param test-preview-mode=True
binaries_artifact: e2e_bin_preview
# - name: Intel / GEN 12 Integrated
# runner: '["Linux", "gen12"]'
# target_devices: level_zero:gpu;opencl:gpu;opencl:cpu
# - name: NVIDIA/CUDA
# runner: '["Linux", "cuda"]'
# image_options: -u 1001 --gpus all --cap-add SYS_ADMIN
# target_devices: cuda:gpu
# - name: AMD/HIP
# runner: '["Linux", "amdgpu"]'
# image_options: -u 1001 --device=/dev/dri --device=/dev/kfd
# target_devices: hip:gpu
# extra_lit_opts: -j 1
# - name: Intel / Arc A-Series Graphics
# runner: '["Linux", "arc"]'
# target_devices: level_zero:gpu;opencl:gpu;level_zero_v2:gpu
# - name: Intel Dev IGC / Arc A-Series Graphics
# runner: '["Linux", "arc"]'
# image: ghcr.io/intel/llvm/ubuntu2404_intel_drivers:devigc
# target_devices: level_zero:gpu
# use_igc_dev: true
# env: '{"LIT_FILTER":"Matrix/"}'
# - name: Intel / Ponte Vecchio GPU
# runner: '["Linux", "pvc"]'
# target_devices: level_zero:gpu;opencl:gpu;level_zero_v2:gpu
# - name: Intel Dev IGC / Ponte Vecchio GPU
# runner: '["Linux", "pvc"]'
# image: ghcr.io/intel/llvm/ubuntu2404_intel_drivers:devigc
# target_devices: level_zero:gpu
# use_igc_dev: true
# env: '{"LIT_FILTER":"Matrix/"}'
# - name: Intel / Battlemage Graphics
# runner: '["Linux", "bmg"]'
# target_devices: level_zero_v1:gpu;level_zero_v2:gpu
# - name: Preview Mode
# runner: '["Linux", "gen12"]'
# target_devices: level_zero:gpu;opencl:gpu;opencl:cpu
# extra_lit_opts: --param test-preview-mode=True
# binaries_artifact: e2e_bin_preview
- name: L0 v2
runner: '["TEST_PERF"]'
# runner: '["Linux", "L0v2"]'
target_devices: level_zero_v2:arch-intel_gpu_mtl_u
extra_lit_opts: -j 12

# We're in an ABI-breaking window, so these don't make sense for now.
- name: ABI compatibility / sycl-rel-6_2
Expand Down Expand Up @@ -236,44 +241,44 @@ jobs:
skip_run: ${{matrix.use_igc_dev && contains(github.event.pull_request.labels.*.name, 'ci-no-devigc') || matrix.skip_run || 'false'}}
env: ${{ matrix.env || (contains(needs.detect_changes.outputs.filters, 'esimd') && '{}' || '{"LIT_FILTER_OUT":"ESIMD/"}') }}

test-perf:
needs: [build, detect_changes]
permissions:
contents: write
packages: read
if: |
!cancelled()
&& needs.build.outputs.build_conclusion == 'success'
&& (contains(github.event.pull_request.labels.*.name, 'run-perf-tests')
|| contains(needs.detect_changes.outputs.filters, 'perf-tests'))
strategy:
fail-fast: false
matrix:
include:
- name: Intel GEN12 Graphics system
runner: '["Linux", "gen12"]'
image_extra_opts: --device=/dev/dri
- name: Intel Arc A-Series Graphics system
runner: '["Linux", "arc"]'
image_extra_opts: --device=/dev/dri
- name: AMD system
runner: '["Linux", "amdgpu"]'
image_extra_opts: --device=/dev/dri --device=/dev/kfd
- name: CUDA system
runner: '["Linux", "cuda"]'
image_extra_opts: --gpus all
uses: ./.github/workflows/sycl-linux-run-tests.yml
with:
name: Perf tests on ${{ matrix.name }}
runner: ${{ matrix. runner }}
image_options: -u 1001 --privileged --cap-add SYS_ADMIN ${{ matrix.image_extra_opts }}
target_devices: all
# test-perf:
# needs: [build, detect_changes]
# permissions:
# contents: write
# packages: read
# if: |
# !cancelled()
# && needs.build.outputs.build_conclusion == 'success'
# && (contains(github.event.pull_request.labels.*.name, 'run-perf-tests')
# || contains(needs.detect_changes.outputs.filters, 'perf-tests'))
# strategy:
# fail-fast: false
# matrix:
# include:
# - name: Intel GEN12 Graphics system
# runner: '["Linux", "gen12"]'
# image_extra_opts: --device=/dev/dri
# - name: Intel Arc A-Series Graphics system
# runner: '["Linux", "arc"]'
# image_extra_opts: --device=/dev/dri
# - name: AMD system
# runner: '["Linux", "amdgpu"]'
# image_extra_opts: --device=/dev/dri --device=/dev/kfd
# - name: CUDA system
# runner: '["Linux", "cuda"]'
# image_extra_opts: --gpus all
# uses: ./.github/workflows/sycl-linux-run-tests.yml
# with:
# name: Perf tests on ${{ matrix.name }}
# runner: ${{ matrix. runner }}
# image_options: -u 1001 --privileged --cap-add SYS_ADMIN ${{ matrix.image_extra_opts }}
# target_devices: all

env: '{"LIT_FILTER":"PerformanceTests/"}'
extra_lit_opts: -a -j 1 --param enable-perf-tests=True
# env: '{"LIT_FILTER":"PerformanceTests/"}'
# extra_lit_opts: -a -j 1 --param enable-perf-tests=True

repo_ref: ${{ github.sha }}
# repo_ref: ${{ github.sha }}

toolchain_artifact: ${{ needs.build.outputs.toolchain_artifact }}
toolchain_artifact_filename: ${{ needs.build.outputs.toolchain_artifact_filename }}
toolchain_decompress_command: ${{ needs.build.outputs.toolchain_decompress_command }}
# toolchain_artifact: ${{ needs.build.outputs.toolchain_artifact }}
# toolchain_artifact_filename: ${{ needs.build.outputs.toolchain_artifact_filename }}
# toolchain_decompress_command: ${{ needs.build.outputs.toolchain_decompress_command }}
10 changes: 10 additions & 0 deletions .github/workflows/sycl-linux-run-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,7 @@ on:
- '["Linux", "build"]'
- '["cuda"]'
- '["PVC_PERF"]'
- '["Linux", "L0v2"]'
image:
type: choice
options:
Expand All @@ -181,6 +182,7 @@ on:
- 'opencl:gpu'
- 'hip:gpu'
- 'cuda:gpu'
- 'level_zero_v2:arch-intel_gpu_mtl_u'
tests_selector:
type: choice
options:
Expand Down Expand Up @@ -243,6 +245,14 @@ jobs:
sparse-checkout: |
devops
sycl/cts_exclude_filter
- name: Show checkout information
shell: bash
run: |
echo "Current branch: $(git branch --show-current)"
echo "Current commit: $(git rev-parse HEAD)"
echo "Current commit (short): $(git rev-parse --short HEAD)"
echo "Commit message: $(git log -1 --pretty=%B)"
git log -1 --oneline
- name: Register cleanup after job is finished
uses: ./devops/actions/cleanup
- name: Reset Intel GPU
Expand Down
Loading
Loading