Skip to content

Commit 3a42a38

Browse files
igchorpbalcer
authored andcommitted
[Testing] Handle multi-device and PVC test failures
To handle output matching on multi-device systems, parse input file and remove duplicate lines (line which differ only by device id). Also, skip sampler and usm tests if required functions are not supported to enable running them on PVC.
1 parent 1b8ee0d commit 3a42a38

13 files changed

+172
-58
lines changed

.github/workflows/multi_device.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
---
2+
name: Multi Device testing
3+
4+
on: [push, pull_request]
5+
6+
concurrency:
7+
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
8+
cancel-in-progress: true
9+
10+
permissions:
11+
contents: read
12+
13+
jobs:
14+
examples:
15+
name: Multi Device testing
16+
if: github.repository == 'oneapi-src/unified-runtime' # run only on upstream; forks won't have the HW
17+
strategy:
18+
matrix:
19+
adapter: [
20+
{name: L0}
21+
]
22+
build_type: [Debug, Release]
23+
compiler: [{c: gcc, cxx: g++}] # TODO: investigate why memory-adapter-level_zero hangs with clang
24+
25+
runs-on: "${{matrix.adapter.name}}_2T"
26+
27+
steps:
28+
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
29+
30+
- name: Install pip packages
31+
run: pip install -r third_party/requirements.txt
32+
33+
# TODO: enable once test failure are fixed/ignored
34+
# - name: Download DPC++
35+
# run: |
36+
# wget -O ${{github.workspace}}/dpcpp_compiler.tar.gz https://github.com/intel/llvm/releases/download/nightly-2024-01-29/sycl_linux.tar.gz
37+
# mkdir dpcpp_compiler
38+
# tar -xvf ${{github.workspace}}/dpcpp_compiler.tar.gz -C dpcpp_compiler
39+
40+
- name: Configure CMake
41+
shell: bash -el {0}
42+
run: >
43+
cmake
44+
-B${{github.workspace}}/build
45+
-DCMAKE_C_COMPILER=${{matrix.compiler.c}}
46+
-DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}}
47+
-DCMAKE_BUILD_TYPE=${{matrix.build_type}}
48+
-DUR_DEVELOPER_MODE=ON
49+
-DUR_BUILD_TESTS=ON
50+
-DUR_BUILD_ADAPTER_${{matrix.adapter.name}}=ON
51+
-DUR_TEST_DEVICES_COUNT=2
52+
53+
- name: Build
54+
run: cmake --build ${{github.workspace}}/build -j $(nproc)
55+
56+
- name: Test adapter specific
57+
working-directory: ${{github.workspace}}/build
58+
run: ctest -C ${{matrix.build_type}} --output-on-failure -L "adapter-specific" --timeout 180
59+
60+
- name: Test adapters
61+
working-directory: ${{github.workspace}}/build
62+
run: env UR_CTS_ADAPTER_PLATFORM="${{matrix.adapter.platform}}" ctest -C ${{matrix.build_type}} --output-on-failure -L "conformance" --timeout 180

test/conformance/cts_exe.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import subprocess # nosec B404
1616
import signal
1717
import re
18+
from collections import OrderedDict
1819

1920
if __name__ == '__main__':
2021

@@ -31,12 +32,22 @@
3132

3233
pat = re.compile(r'\[( )*FAILED( )*\]')
3334
output_list = []
35+
test_cases = []
3436
for line in result.stdout:
3537
output_list.append(line)
3638
if pat.search(line):
3739
test_case = line.split(" ")[5]
3840
test_case = test_case.rstrip(',')
39-
print(test_case)
41+
test_cases.append(test_case)
42+
43+
# Every fail has a single corresponding match line but if there are multiple
44+
# devices being tested there will be multiple lines with the same failure
45+
# message. To avoid matching mismatch, remove lines that differ only by device ID.
46+
test_cases = [re.sub(r'ID[0-9]ID', 'X', tc) for tc in test_cases]
47+
test_cases = list(OrderedDict.fromkeys(test_cases))
48+
49+
for tc in test_cases:
50+
print(tc)
4051

4152
rc = result.wait()
4253
if rc < 0:
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
urMemBufferPartitionTest.InvalidValueCreateType/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
22
urMemBufferPartitionTest.InvalidValueBufferCreateInfoOutOfBounds/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
3-
urMemGetInfoImageTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_MEM_INFO_SIZE
3+
{{OPT}}urMemGetInfoImageTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_MEM_INFO_SIZE
44
{{Segmentation fault|Aborted}}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
urMemBufferPartitionTest.InvalidValueCreateType/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
22
urMemBufferPartitionTest.InvalidValueBufferCreateInfoOutOfBounds/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
3-
urMemGetInfoImageTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_MEM_INFO_SIZE
3+
{{OPT}}urMemGetInfoImageTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_MEM_INFO_SIZE
44
{{Segmentation fault|Aborted}}

test/conformance/memory/memory_adapter_native_cpu.match

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,6 @@ urMemGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_INFO_
44
urMemGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_INFO_CONTEXT
55
urMemGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_INFO_SIZE
66
urMemGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_INFO_CONTEXT
7-
urMemImageCreateTest.SuccessWith3DImageType/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
8-
urMemImageCreateTest.InvalidSize/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
9-
urMemImageCreateTest.InvalidImageDescStype/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
10-
urMemImageCreateTestWith1DMemoryTypeParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_TYPE_IMAGE1D
11-
urMemImageCreateTestWith1DMemoryTypeParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_TYPE_IMAGE1D_ARRAY
12-
urMemImageCreateTestWith2DMemoryTypeParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_TYPE_IMAGE2D
13-
urMemImageCreateTestWith2DMemoryTypeParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_TYPE_IMAGE2D_ARRAY
14-
urMemImageCreateWithHostPtrFlagsTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_FLAG_ALLOC_COPY_HOST_POINTER
15-
urMemImageCreateWithHostPtrFlagsTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_MEM_FLAG_USE_HOST_POINTER
167
urMemImageCreateTestWithImageFormatParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_IMAGE_CHANNEL_ORDER_A__UR_IMAGE_CHANNEL_TYPE_SNORM_INT8
178
urMemImageCreateTestWithImageFormatParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_IMAGE_CHANNEL_ORDER_A__UR_IMAGE_CHANNEL_TYPE_SNORM_INT16
189
urMemImageCreateTestWithImageFormatParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_IMAGE_CHANNEL_ORDER_A__UR_IMAGE_CHANNEL_TYPE_UNORM_INT8

test/conformance/memory/urMemImageCreate.cpp

Lines changed: 47 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@
55
#include <uur/fixtures.h>
66
#include <uur/raii.h>
77

8-
using urMemImageCreateTest = uur::urContextTest;
9-
UUR_INSTANTIATE_DEVICE_TEST_SUITE_P(urMemImageCreateTest);
10-
118
static ur_image_format_t image_format{UR_IMAGE_CHANNEL_ORDER_RGBA,
129
UR_IMAGE_CHANNEL_TYPE_SIGNED_INT32};
1310

@@ -25,8 +22,52 @@ static ur_image_desc_t image_desc{
2522
0 ///< [in] number of samples
2623
};
2724

25+
struct urMemImageCreateTest : public uur::urContextTest {
26+
void SetUp() override {
27+
UUR_RETURN_ON_FATAL_FAILURE(uur::urContextTest::SetUp());
28+
29+
ur_mem_handle_t image_handle = nullptr;
30+
auto ret =
31+
urMemImageCreate(context, UR_MEM_FLAG_READ_WRITE, &image_format,
32+
&image_desc, nullptr, &image_handle);
33+
34+
if (ret == UR_RESULT_ERROR_UNSUPPORTED_FEATURE) {
35+
GTEST_SKIP() << "urMemImageCreate not supported";
36+
}
37+
}
38+
39+
void TearDown() override {
40+
UUR_RETURN_ON_FATAL_FAILURE(uur::urContextTest::TearDown());
41+
}
42+
};
43+
44+
UUR_INSTANTIATE_DEVICE_TEST_SUITE_P(urMemImageCreateTest);
45+
46+
template <typename Param>
47+
struct urMemImageCreateTestWithParam
48+
: public uur::urContextTestWithParam<Param> {
49+
void SetUp() override {
50+
UUR_RETURN_ON_FATAL_FAILURE(
51+
uur::urContextTestWithParam<Param>::SetUp());
52+
53+
ur_mem_handle_t image_handle = nullptr;
54+
auto ret = urMemImageCreate(this->context, UR_MEM_FLAG_READ_WRITE,
55+
&image_format, &image_desc, nullptr,
56+
&image_handle);
57+
58+
if (ret == UR_RESULT_ERROR_UNSUPPORTED_FEATURE) {
59+
GTEST_SKIP() << "urMemImageCreate not supported";
60+
}
61+
}
62+
63+
void TearDown() override {
64+
UUR_RETURN_ON_FATAL_FAILURE(
65+
uur::urContextTestWithParam<Param>::TearDown());
66+
}
67+
};
68+
2869
using urMemImageCreateTestWith1DMemoryTypeParam =
29-
uur::urContextTestWithParam<ur_mem_type_t>;
70+
urMemImageCreateTestWithParam<ur_mem_type_t>;
3071

3172
UUR_TEST_SUITE_P(urMemImageCreateTestWith1DMemoryTypeParam,
3273
::testing::Values(UR_MEM_TYPE_IMAGE1D,
@@ -57,7 +98,7 @@ TEST_P(urMemImageCreateTestWith1DMemoryTypeParam, Success) {
5798
}
5899

59100
using urMemImageCreateTestWith2DMemoryTypeParam =
60-
uur::urContextTestWithParam<ur_mem_type_t>;
101+
urMemImageCreateTestWithParam<ur_mem_type_t>;
61102

62103
UUR_TEST_SUITE_P(urMemImageCreateTestWith2DMemoryTypeParam,
63104
::testing::Values(UR_MEM_TYPE_IMAGE2D,
@@ -248,7 +289,7 @@ TEST_P(urMemImageCreateTest, InvalidImageDescSlicePitch) {
248289
}
249290

250291
using urMemImageCreateWithHostPtrFlagsTest =
251-
uur::urContextTestWithParam<ur_mem_flag_t>;
292+
urMemImageCreateTestWithParam<ur_mem_flag_t>;
252293

253294
UUR_TEST_SUITE_P(urMemImageCreateWithHostPtrFlagsTest,
254295
::testing::Values(UR_MEM_FLAG_ALLOC_COPY_HOST_POINTER,
Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_REFERENCE_COUNT
2-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_CONTEXT
3-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_NORMALIZED_COORDS
4-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_ADDRESSING_MODE
5-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_FILTER_MODE
6-
urSamplerGetInfoTest.InvalidSizePropSizeSmall/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
7-
urSamplerReleaseTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
8-
urSamplerRetainTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
1+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_REFERENCE_COUNT
2+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_CONTEXT
3+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_NORMALIZED_COORDS
4+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_ADDRESSING_MODE
5+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_FILTER_MODE
6+
{{OPT}}urSamplerGetInfoTest.InvalidSizePropSizeSmall/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
7+
{{OPT}}urSamplerReleaseTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
8+
{{OPT}}urSamplerRetainTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
9+
{{OPT}}{{Segmentation fault|Aborted}}
Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_REFERENCE_COUNT
2-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_CONTEXT
3-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_NORMALIZED_COORDS
4-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_ADDRESSING_MODE
5-
urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_FILTER_MODE
6-
urSamplerGetInfoTest.InvalidSizePropSizeSmall/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
7-
urSamplerReleaseTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
8-
urSamplerRetainTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
1+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_REFERENCE_COUNT
2+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_CONTEXT
3+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_NORMALIZED_COORDS
4+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_ADDRESSING_MODE
5+
{{OPT}}urSamplerGetInfoTestWithParam.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}___UR_SAMPLER_INFO_FILTER_MODE
6+
{{OPT}}urSamplerGetInfoTest.InvalidSizePropSizeSmall/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
7+
{{OPT}}urSamplerReleaseTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
8+
{{OPT}}urSamplerRetainTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
9+
{{OPT}}{{Segmentation fault|Aborted}}

test/conformance/sampler/sampler_adapter_native_cpu.match

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,3 @@
1-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_NONE_UR_SAMPLER_FILTER_MODE_NEAREST
2-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_NONE_UR_SAMPLER_FILTER_MODE_LINEAR
3-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_CLAMP_TO_EDGE_UR_SAMPLER_FILTER_MODE_NEAREST
4-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_CLAMP_TO_EDGE_UR_SAMPLER_FILTER_MODE_LINEAR
5-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_CLAMP_UR_SAMPLER_FILTER_MODE_NEAREST
6-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_CLAMP_UR_SAMPLER_FILTER_MODE_LINEAR
7-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_REPEAT_UR_SAMPLER_FILTER_MODE_NEAREST
8-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_REPEAT_UR_SAMPLER_FILTER_MODE_LINEAR
9-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_MIRRORED_REPEAT_UR_SAMPLER_FILTER_MODE_NEAREST
10-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__NORMALIZED_UR_SAMPLER_ADDRESSING_MODE_MIRRORED_REPEAT_UR_SAMPLER_FILTER_MODE_LINEAR
11-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_NONE_UR_SAMPLER_FILTER_MODE_NEAREST
12-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_NONE_UR_SAMPLER_FILTER_MODE_LINEAR
13-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_CLAMP_TO_EDGE_UR_SAMPLER_FILTER_MODE_NEAREST
14-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_CLAMP_TO_EDGE_UR_SAMPLER_FILTER_MODE_LINEAR
15-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_CLAMP_UR_SAMPLER_FILTER_MODE_NEAREST
16-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_CLAMP_UR_SAMPLER_FILTER_MODE_LINEAR
17-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_REPEAT_UR_SAMPLER_FILTER_MODE_NEAREST
18-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_REPEAT_UR_SAMPLER_FILTER_MODE_LINEAR
19-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_MIRRORED_REPEAT_UR_SAMPLER_FILTER_MODE_NEAREST
20-
urSamplerCreateTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UNNORMALIZED_UR_SAMPLER_ADDRESSING_MODE_MIRRORED_REPEAT_UR_SAMPLER_FILTER_MODE_LINEAR
211
urSamplerCreateWithNativeHandleTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
222
urSamplerGetInfoTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_SAMPLER_INFO_REFERENCE_COUNT
233
urSamplerGetInfoTestWithParam.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_SAMPLER_INFO_CONTEXT

test/conformance/sampler/urSamplerCreate.cpp

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,32 @@
77
#include "uur/raii.h"
88

99
struct urSamplerCreateTestWithParam
10-
: uur::urContextTestWithParam<uur::SamplerCreateParamT> {};
10+
: public uur::urContextTestWithParam<uur::SamplerCreateParamT> {
11+
void SetUp() override {
12+
UUR_RETURN_ON_FATAL_FAILURE(
13+
uur::urContextTestWithParam<uur::SamplerCreateParamT>::SetUp());
14+
15+
ur_sampler_desc_t sampler_desc{
16+
UR_STRUCTURE_TYPE_SAMPLER_DESC, /* stype */
17+
nullptr, /* pNext */
18+
{}, /* normalizedCoords */
19+
{}, /* addressing mode */
20+
{}, /* filterMode */
21+
};
22+
23+
uur::raii::Sampler hSampler = nullptr;
24+
auto ret = urSamplerCreate(context, &sampler_desc, hSampler.ptr());
25+
if (ret == UR_RESULT_ERROR_UNSUPPORTED_FEATURE ||
26+
ret == UR_RESULT_ERROR_UNINITIALIZED) {
27+
GTEST_SKIP() << "urSamplerCreate not supported";
28+
}
29+
}
30+
31+
void TearDown() override {
32+
UUR_RETURN_ON_FATAL_FAILURE(
33+
uur::urContextTestWithParam<uur::SamplerCreateParamT>::TearDown());
34+
}
35+
};
1136

1237
UUR_TEST_SUITE_P(
1338
urSamplerCreateTestWithParam,

0 commit comments

Comments
 (0)