Skip to content

Commit 1e4a92f

Browse files
committed
[CTS] Fix urEnqueueKernelLaunchIncrementMultiDeviceMultiThreadTest test
Do not run multiple kernels in parallel that modify the same memory. To make this work, atomics would have to be used. Instead, use separate memory for each kernel.
1 parent b8b76f4 commit 1e4a92f

File tree

1 file changed

+3
-20
lines changed

1 file changed

+3
-20
lines changed

test/conformance/enqueue/urEnqueueKernelLaunchAndMemcpyInOrder.cpp

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -343,8 +343,8 @@ TEST_P(urEnqueueKernelLaunchIncrementMultiDeviceMultiThreadTest, Success) {
343343
constexpr size_t n_dimensions = 1;
344344

345345
auto queue = queuePerThread ? queues[i] : queues.back();
346-
auto kernel = queuePerThread ? kernels[i] : kernels.back();
347-
auto sharedPtr = queuePerThread ? SharedMem[i] : SharedMem.back();
346+
auto kernel = kernels[i];
347+
auto sharedPtr = SharedMem[i];
348348

349349
std::vector<uur::raii::Event> Events(numOpsPerThread + 1);
350350
for (size_t j = 0; j < numOpsPerThread; j++) {
@@ -381,29 +381,12 @@ TEST_P(urEnqueueKernelLaunchIncrementMultiDeviceMultiThreadTest, Success) {
381381
size_t ExpectedValue = InitialValue;
382382
ExpectedValue += numOpsPerThread;
383383
for (uint32_t j = 0; j < ArraySize; ++j) {
384-
if (queuePerThread) {
385-
ASSERT_EQ(data[j], ExpectedValue);
386-
} else {
387-
// All threads write to the same memory, so the value might be greater
388-
ASSERT_GE(data[j], ExpectedValue);
389-
}
384+
ASSERT_EQ(data[j], ExpectedValue);
390385
}
391386
});
392387
}
393388

394389
for (auto &thread : threads) {
395390
thread.join();
396391
}
397-
398-
if (!queuePerThread) {
399-
size_t ExpectedValue = InitialValue;
400-
ExpectedValue += numOpsPerThread * numThreads;
401-
402-
for (size_t i = 0; i < devices.size(); i++) {
403-
for (uint32_t j = 0; j < ArraySize; ++j) {
404-
ASSERT_EQ(reinterpret_cast<uint32_t *>(SharedMem.back())[j],
405-
ExpectedValue);
406-
}
407-
}
408-
}
409392
}

0 commit comments

Comments
 (0)