Skip to content

Commit ad4f3d3

Browse files
[CI] Run spirv-backend pre-built e2e tests on BMG in precommit (#16898)
Co-authored-by: Levytskyy, Vyacheslav <[email protected]>
1 parent 78613dc commit ad4f3d3

15 files changed

+84
-12
lines changed

.github/workflows/sycl-linux-precommit.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,13 @@ jobs:
107107
target_devices: level_zero:gpu
108108
# The new Xe kernel driver used by BMG doesn't support resetting.
109109
reset_intel_gpu: false
110+
- name: SPIR-V Backend / Intel Battlemage Graphics
111+
runner: '["Linux", "bmg"]'
112+
image_options: -u 1001 --device=/dev/dri -v /dev/dri/by-path:/dev/dri/by-path --privileged --cap-add SYS_ADMIN
113+
target_devices: level_zero:gpu;opencl:gpu;opencl:cpu
114+
reset_intel_gpu: false
115+
extra_lit_opts: --param spirv-backend=True
116+
e2e_binaries_artifact: sycl_e2e_bin_default_spirv_backend
110117
uses: ./.github/workflows/sycl-linux-run-tests.yml
111118
with:
112119
name: ${{ matrix.name }}
@@ -120,7 +127,7 @@ jobs:
120127
sycl_toolchain_artifact: sycl_linux_default
121128
sycl_toolchain_archive: ${{ needs.build.outputs.artifact_archive_name }}
122129
sycl_toolchain_decompress_command: ${{ needs.build.outputs.artifact_decompress_command }}
123-
e2e_binaries_artifact: sycl_e2e_bin_default
130+
e2e_binaries_artifact: ${{ matrix.e2e_binaries_artifact || 'sycl_e2e_bin_default' }}
124131
e2e_testing_mode: 'run-only'
125132

126133
# Do not install drivers on AMD and CUDA runners.

sycl/test-e2e/Adapters/enqueue-arg-order-image.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,16 @@
99
// support, enforce it for this test.
1010
// RUN: env SYCL_HOST_UNIFIED_MEMORY=1 SYCL_UR_TRACE=2 %{run} %t.out | FileCheck %s
1111

12+
// 1. There is a SPIR-V spec issue that blocks generation of valid SPIR-V code
13+
// for the OpenCL environments support of the "Unknown" image format:
14+
// https://github.com/KhronosGroup/SPIRV-Headers/issues/487
15+
// 2. The PR https://github.com/llvm/llvm-project/pull/127242 in upstream needs
16+
// to be merged with intel/llvm to address an issue of mapping from SPIR-V
17+
// friendly builtins to Image Read/Write instructions After the 1 issue is
18+
// resolved and 2 is merged we will re-enable Image support.
19+
// UNSUPPORTED: spirv-backend && arch-intel_gpu_bmg_g21
20+
// UNSUPPORTED-TRACKER: https://github.com/KhronosGroup/SPIRV-Headers/issues/487
21+
1222
#include <iostream>
1323

1424
#include <sycl/accessor_image.hpp>

sycl/test-e2e/Adapters/interop-level-zero-image-get-native-mem.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,16 @@
55
// spir-v gen for legacy images at O0 not working
66
// UNSUPPORTED: O0
77

8+
// 1. There is a SPIR-V spec issue that blocks generation of valid SPIR-V code
9+
// for the OpenCL environments support of the "Unknown" image format:
10+
// https://github.com/KhronosGroup/SPIRV-Headers/issues/487
11+
// 2. The PR https://github.com/llvm/llvm-project/pull/127242 in upstream needs
12+
// to be merged with intel/llvm to address an issue of mapping from SPIR-V
13+
// friendly builtins to Image Read/Write instructions After the 1 issue is
14+
// resolved and 2 is merged we will re-enable Image support.
15+
// UNSUPPORTED: spirv-backend && arch-intel_gpu_bmg_g21
16+
// UNSUPPORTED-TRACKER: https://github.com/KhronosGroup/SPIRV-Headers/issues/487
17+
818
// we use the interop to get the native image handle and then use that to make a
919
// new image and enumerate the pixels.
1020

sycl/test-e2e/Adapters/interop-level-zero-image-ownership.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,16 @@
77
// spir-v gen for legacy images at O0 not working
88
// UNSUPPORTED: O0
99

10+
// 1. There is a SPIR-V spec issue that blocks generation of valid SPIR-V code
11+
// for the OpenCL environments support of the "Unknown" image format:
12+
// https://github.com/KhronosGroup/SPIRV-Headers/issues/487
13+
// 2. The PR https://github.com/llvm/llvm-project/pull/127242 in upstream needs
14+
// to be merged with intel/llvm to address an issue of mapping from SPIR-V
15+
// friendly builtins to Image Read/Write instructions After the 1 issue is
16+
// resolved and 2 is merged we will re-enable Image support.
17+
// UNSUPPORTED: spirv-backend && arch-intel_gpu_bmg_g21
18+
// UNSUPPORTED-TRACKER: https://github.com/KhronosGroup/SPIRV-Headers/issues/487
19+
1020
// RUN: %{build} %level_zero_options -o %t.out
1121
// RUN: env UR_L0_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s
1222

sycl/test-e2e/Adapters/interop-level-zero-image.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,16 @@
55
// spir-v gen for legacy images at O0 not working
66
// UNSUPPORTED: O0
77

8+
// 1. There is a SPIR-V spec issue that blocks generation of valid SPIR-V code
9+
// for the OpenCL environments support of the "Unknown" image format:
10+
// https://github.com/KhronosGroup/SPIRV-Headers/issues/487
11+
// 2. The PR https://github.com/llvm/llvm-project/pull/127242 in upstream needs
12+
// to be merged with intel/llvm to address an issue of mapping from SPIR-V
13+
// friendly builtins to Image Read/Write instructions After the 1 issue is
14+
// resolved and 2 is merged we will re-enable Image support.
15+
// UNSUPPORTED: spirv-backend && arch-intel_gpu_bmg_g21
16+
// UNSUPPORTED-TRACKER: https://github.com/KhronosGroup/SPIRV-Headers/issues/487
17+
818
// This test verifies that make_image is working for 1D, 2D and 3D images.
919
// We instantiate an image with L0, set its body, then use a host accessor to
1020
// verify that the pixels are set correctly.

sycl/test-e2e/Basic/device_event.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
// RUN: %{build} -o %t.run
22
// RUN: %{run} %t.run
33

4-
// XFAIL: spirv-backend && run-mode
5-
// XFAIL-TRACKER: CMPLRLLVM-64705
4+
// UNSUPPORTED: spirv-backend
5+
// UNSUPPORTED-TRACKER: CMPLRLLVM-64705
66

77
//==--------device_event.cpp - SYCL class device_event test ----------------==//
88
//
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# There is a SPIR-V spec issue that blocks generation of valid SPIR-V code for
2+
# the OpenCL environments support of the "Unknown" image format:
3+
# https://github.com/KhronosGroup/SPIRV-Headers/issues/487
4+
# After the issue is resolved we will re-enable Image support.
5+
config.unsupported_features += ['spirv-backend']

sycl/test-e2e/DiscardEvents/discard_events_check_images.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,16 @@
1111
// they don't pass then it's most likely a general issue unrelated to
1212
// discard_events.
1313

14+
// 1. There is a SPIR-V spec issue that blocks generation of valid SPIR-V code
15+
// for the OpenCL environments support of the "Unknown" image format:
16+
// https://github.com/KhronosGroup/SPIRV-Headers/issues/487
17+
// 2. The PR https://github.com/llvm/llvm-project/pull/127242 in upstream needs
18+
// to be merged with intel/llvm to address an issue of mapping from SPIR-V
19+
// friendly builtins to Image Read/Write instructions After the 1 issue is
20+
// resolved and 2 is merged we will re-enable Image support.
21+
// UNSUPPORTED: spirv-backend && arch-intel_gpu_bmg_g21
22+
// UNSUPPORTED-TRACKER: https://github.com/KhronosGroup/SPIRV-Headers/issues/487
23+
1424
#include "../helpers.hpp" // for printableVec
1525
#include <cassert>
1626
#include <iostream>

sycl/test-e2e/MemorySanitizer/check_buffer.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@
66
// RUN: %{build} %device_msan_flags -O2 -g -o %t3.out
77
// RUN: %{run} not %t3.out 2>&1 | FileCheck %s
88

9-
// XFAIL: spirv-backend && gpu && run-mode
10-
// XFAIL-TRACKER: https://github.com/llvm/llvm-project/issues/122075
11-
129
#include <sycl/detail/core.hpp>
1310

1411
__attribute__((noinline)) long long foo(int data1, long long data2) {

sycl/test-e2e/MemorySanitizer/check_call.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@
66
// RUN: %{build} %device_msan_flags -O2 -g -o %t3.out
77
// RUN: %{run} not %t3.out 2>&1 | FileCheck %s
88

9-
// XFAIL: spirv-backend && gpu && run-mode
10-
// XFAIL-TRACKER: https://github.com/llvm/llvm-project/issues/122075
11-
129
#include <sycl/detail/core.hpp>
1310
#include <sycl/usm.hpp>
1411

sycl/test-e2e/MemorySanitizer/check_divide.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@
66
// RUN: %{build} %device_msan_flags -O2 -g -o %t3.out
77
// RUN: %{run} not %t3.out 2>&1 | FileCheck %s
88

9-
// XFAIL: spirv-backend && gpu && run-mode
10-
// XFAIL-TRACKER: https://github.com/llvm/llvm-project/issues/122075
11-
129
#include <sycl/detail/core.hpp>
1310
#include <sycl/usm.hpp>
1411

sycl/test-e2e/Sampler/lit.local.cfg

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# 1. There is a SPIR-V spec issue that blocks generation of valid SPIR-V code for
2+
# the OpenCL environments support of the "Unknown" image format:
3+
# https://github.com/KhronosGroup/SPIRV-Headers/issues/487
4+
# 2. The PR https://github.com/llvm/llvm-project/pull/127242 in upstream needs to be
5+
# merged with intel/llvm to address an issue of mapping from SPIR-V friendly builtins
6+
# to Image Read/Write instructions
7+
# After the 1 issue is resolved and 2 is merged we will re-enable Image support.
8+
config.unsupported_features += ['spirv-backend']

sycl/test-e2e/USM/copy.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@
99
// RUN: %{build} -fsycl-device-code-split=per_kernel -o %t1.out
1010
// RUN: %{run} %t1.out
1111

12+
// UNSUPPORTED: spirv-backend && arch-intel_gpu_bmg_g21
13+
// UNSUPPORTED-TRACKER: CMPLRLLVM-64705
14+
1215
#include <sycl/detail/core.hpp>
1316
#include <sycl/usm.hpp>
1417

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# This feature refers to an unsupported capability in the SPIR-V Backend,
2+
# pending triaging and identifying required features/extensions.
3+
# Temporarily disabled until the failure is addressed:
4+
# https://github.com/llvm/llvm-project/issues/127791
5+
config.unsupported_features += ['spirv-backend']
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Support of this feature is waiting for the upstream PR
2+
# https://github.com/llvm/llvm-project/pull/127737 to be merged with intel/llvm.
3+
config.unsupported_features += ['spirv-backend']

0 commit comments

Comments
 (0)