Skip to content

Commit b7218bd

Browse files
author
Petr Vesely
committed
[UR] Check for VM support
1 parent 0095324 commit b7218bd

File tree

2 files changed

+31
-1
lines changed

2 files changed

+31
-1
lines changed

test/conformance/enqueue/urEnqueueKernelLaunch.cpp

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,15 @@ struct urEnqueueKernelLaunchWithVirtualMemory : uur::urKernelExecutionTest {
126126
void SetUp() override {
127127
program_name = "fill_usm";
128128
UUR_RETURN_ON_FATAL_FAILURE(uur::urKernelExecutionTest::SetUp());
129+
130+
ur_bool_t virtual_memory_support = false;
131+
ASSERT_SUCCESS(urDeviceGetInfo(
132+
device, UR_DEVICE_INFO_VIRTUAL_MEMORY_SUPPORT, sizeof(ur_bool_t),
133+
&virtual_memory_support, nullptr));
134+
if (!virtual_memory_support) {
135+
GTEST_SKIP() << "Virtual memory is not supported.";
136+
}
137+
129138
ASSERT_SUCCESS(urVirtualMemGranularityGetInfo(
130139
context, device, UR_VIRTUAL_MEM_GRANULARITY_INFO_MINIMUM,
131140
sizeof(granularity), &granularity, nullptr));
@@ -179,8 +188,11 @@ TEST_P(urEnqueueKernelLaunchWithVirtualMemory, Success) {
179188
size_t work_dim = 1;
180189
size_t global_offset = 0;
181190
size_t global_size = alloc_size / sizeof(uint32_t);
191+
uint32_t fill_val = 42;
182192

183193
ASSERT_SUCCESS(urKernelSetArgPointer(kernel, 0, nullptr, virtual_ptr));
194+
ASSERT_SUCCESS(
195+
urKernelSetArgValue(kernel, 1, sizeof(fill_val), nullptr, &fill_val));
184196

185197
ur_event_handle_t kernel_evt;
186198
ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, kernel, work_dim,
@@ -195,6 +207,6 @@ TEST_P(urEnqueueKernelLaunchWithVirtualMemory, Success) {
195207

196208
// verify fill worked
197209
for (size_t i = 0; i < data.size(); i++) {
198-
ASSERT_EQ(i, data.at(i));
210+
ASSERT_EQ(fill_val, data.at(i));
199211
}
200212
}

test/conformance/testing/include/uur/fixtures.h

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -670,6 +670,15 @@ template <class T> struct urUSMPoolTestWithParam : urContextTestWithParam<T> {
670670
struct urVirtualMemGranularityTest : urContextTest {
671671
void SetUp() override {
672672
UUR_RETURN_ON_FATAL_FAILURE(urContextTest::SetUp());
673+
674+
ur_bool_t virtual_memory_support = false;
675+
ASSERT_SUCCESS(urDeviceGetInfo(
676+
device, UR_DEVICE_INFO_VIRTUAL_MEMORY_SUPPORT, sizeof(ur_bool_t),
677+
&virtual_memory_support, nullptr));
678+
if (!virtual_memory_support) {
679+
GTEST_SKIP() << "Virtual memory is not supported.";
680+
}
681+
673682
ASSERT_SUCCESS(urVirtualMemGranularityGetInfo(
674683
context, device, UR_VIRTUAL_MEM_GRANULARITY_INFO_MINIMUM,
675684
sizeof(granularity), &granularity, nullptr));
@@ -681,6 +690,15 @@ template <class T>
681690
struct urVirtualMemGranularityTestWithParam : urContextTestWithParam<T> {
682691
void SetUp() override {
683692
UUR_RETURN_ON_FATAL_FAILURE(urContextTestWithParam<T>::SetUp());
693+
694+
ur_bool_t virtual_memory_support = false;
695+
ASSERT_SUCCESS(urDeviceGetInfo(
696+
this->device, UR_DEVICE_INFO_VIRTUAL_MEMORY_SUPPORT,
697+
sizeof(ur_bool_t), &virtual_memory_support, nullptr));
698+
if (!virtual_memory_support) {
699+
GTEST_SKIP() << "Virtual memory is not supported.";
700+
}
701+
684702
ASSERT_SUCCESS(urVirtualMemGranularityGetInfo(
685703
this->context, this->device,
686704
UR_VIRTUAL_MEM_GRANULARITY_INFO_MINIMUM, sizeof(granularity),

0 commit comments

Comments
 (0)