Skip to content

Commit 436428f

Browse files
authored
Merge pull request #1857 from igchor/multi_device_tests
[Testing] Handle multi-device and PVC test failures
2 parents 1b8ee0d + 3a42a38 commit 436428f

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)