Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/intel-llvm-mirror-base-commit
Original file line number Diff line number Diff line change
@@ -1 +1 @@
06407ab5626faccc61fb8367ac1017667045f9e1
edb24728920365ff7aab67922ef22b7ec323b834
27 changes: 14 additions & 13 deletions cmake/FetchOpenCL.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,10 @@ set(OCL_LOADER_REPO
set(OCL_HEADERS_TAG 6eabe90aa7b6cff9c67800a2fe25a0cd88d8b749)
set(OCL_LOADER_TAG ddf6c70230a79cdb8fcccfd3c775b09e6820f42e)

find_package(OpenCL 3.0 QUIET)
# Set NO_CMAKE_PACKAGE_REGISTRY so only system-wide installs are
# detected.
find_package(OpenCL 3.0 QUIET NO_CMAKE_PACKAGE_REGISTRY)

if(OpenCL_FOUND)
# The OpenCL-Headers CMake files don't provide granular info
# on what is and isn't supposed, just the overall OpenCL version.
Expand Down Expand Up @@ -48,16 +51,16 @@ endif()

# OpenCL Headers
if(NOT OpenCL_FOUND)
FetchContent_Declare(ocl-headers
GIT_REPOSITORY ${OCL_HEADERS_REPO}
GIT_TAG ${OCL_HEADERS_TAG}
)
FetchContent_GetProperties(ocl-headers)

if(NOT ocl-headers_POPULATED)
message(STATUS "Will fetch OpenCL headers from ${OCL_HEADERS_REPO}")
FetchContent_Declare(ocl-headers
GIT_REPOSITORY ${OCL_HEADERS_REPO}
GIT_TAG ${OCL_HEADERS_TAG}
)
FetchContent_MakeAvailable(ocl-headers)
endif()
FetchContent_MakeAvailable(ocl-headers)
set(OpenCL_INCLUDE_DIR ${ocl-headers_SOURCE_DIR} CACHE PATH "" FORCE)
else()
message(STATUS "Using OpenCL headers at ${OpenCL_INCLUDE_DIR}")
Expand All @@ -68,17 +71,15 @@ endif()
set(BUILD_SHARED_LIBS ON)

if(NOT OpenCL_FOUND)

FetchContent_Declare(ocl-icd
GIT_REPOSITORY ${OCL_LOADER_REPO}
GIT_TAG ${OCL_LOADER_TAG}
)
FetchContent_GetProperties(ocl-icd)
if(NOT ocl-icd_POPULATED)
message(STATUS "Will fetch OpenCL ICD Loader from ${OCL_LOADER_REPO}")
FetchContent_Declare(ocl-icd
GIT_REPOSITORY ${OCL_LOADER_REPO}
GIT_TAG ${OCL_LOADER_TAG}
)

FetchContent_MakeAvailable(ocl-icd)
endif()
FetchContent_MakeAvailable(ocl-icd)
set(OpenCL_LIBRARY OpenCL::OpenCL CACHE PATH "" FORCE)
else()
message(STATUS
Expand Down
32 changes: 16 additions & 16 deletions test/conformance/enqueue/urEnqueueEventsWaitWithBarrier.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -174,13 +174,13 @@ TEST_P(urEnqueueEventsWaitWithBarrierOrderingTest,
uur::KernelLaunchHelper addHelper(platform, context, add_kernel, queue);
uur::KernelLaunchHelper mulHelper(platform, context, mul_kernel, queue);

addHelper.SetBuffer1DArg(buffer, nullptr);
mulHelper.SetBuffer1DArg(buffer, nullptr);
UUR_RETURN_ON_FATAL_FAILURE(addHelper.SetBuffer1DArg(buffer, nullptr));
UUR_RETURN_ON_FATAL_FAILURE(mulHelper.SetBuffer1DArg(buffer, nullptr));

for (size_t i = 0; i < 10; i++) {
constexpr uint32_t ONE = 1;
urEnqueueMemBufferWrite(queue, buffer, true, 0, sizeof(uint32_t), &ONE, 0,
nullptr, &event);
ASSERT_SUCCESS(urEnqueueMemBufferWrite(
queue, buffer, true, 0, sizeof(uint32_t), &ONE, 0, nullptr, &event));
ASSERT_SUCCESS(urEnqueueEventsWaitWithBarrier(queue, 1, &event, nullptr));
ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, add_kernel, 1, &offset, &count,
nullptr, 0, nullptr, 0, nullptr,
Expand All @@ -205,13 +205,13 @@ TEST_P(urEnqueueEventsWaitWithBarrierOrderingTest,
uur::KernelLaunchHelper addHelper(platform, context, add_kernel, queue);
uur::KernelLaunchHelper mulHelper(platform, context, mul_kernel, queue);

addHelper.SetBuffer1DArg(buffer, nullptr);
mulHelper.SetBuffer1DArg(buffer, nullptr);
UUR_RETURN_ON_FATAL_FAILURE(addHelper.SetBuffer1DArg(buffer, nullptr));
UUR_RETURN_ON_FATAL_FAILURE(mulHelper.SetBuffer1DArg(buffer, nullptr));

for (size_t i = 0; i < 10; i++) {
constexpr uint32_t ONE = 1;
urEnqueueMemBufferWrite(queue, buffer, true, 0, sizeof(uint32_t), &ONE, 0,
nullptr, nullptr);
ASSERT_SUCCESS(urEnqueueMemBufferWrite(
queue, buffer, true, 0, sizeof(uint32_t), &ONE, 0, nullptr, nullptr));
ASSERT_SUCCESS(urEnqueueEventsWaitWithBarrier(queue, 0, nullptr, &event));
ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, add_kernel, 1, &offset, &count,
nullptr, 0, nullptr, 1, &event,
Expand All @@ -235,13 +235,13 @@ TEST_P(urEnqueueEventsWaitWithBarrierOrderingTest, SuccessEventDependencies) {
uur::KernelLaunchHelper addHelper(platform, context, add_kernel, queue);
uur::KernelLaunchHelper mulHelper(platform, context, mul_kernel, queue);

addHelper.SetBuffer1DArg(buffer, nullptr);
mulHelper.SetBuffer1DArg(buffer, nullptr);
UUR_RETURN_ON_FATAL_FAILURE(addHelper.SetBuffer1DArg(buffer, nullptr));
UUR_RETURN_ON_FATAL_FAILURE(mulHelper.SetBuffer1DArg(buffer, nullptr));

for (size_t i = 0; i < 10; i++) {
constexpr uint32_t ONE = 1;
urEnqueueMemBufferWrite(queue, buffer, true, 0, sizeof(uint32_t), &ONE, 0,
nullptr, &event[0]);
ASSERT_SUCCESS(urEnqueueMemBufferWrite(
queue, buffer, true, 0, sizeof(uint32_t), &ONE, 0, nullptr, &event[0]));
ASSERT_SUCCESS(
urEnqueueEventsWaitWithBarrier(queue, 1, &event[0], &event[1]));
ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, add_kernel, 1, &offset, &count,
Expand All @@ -268,13 +268,13 @@ TEST_P(urEnqueueEventsWaitWithBarrierOrderingTest,
uur::KernelLaunchHelper addHelper(platform, context, add_kernel, queue);
uur::KernelLaunchHelper mulHelper(platform, context, mul_kernel, queue);

addHelper.SetBuffer1DArg(buffer, nullptr);
mulHelper.SetBuffer1DArg(buffer, nullptr);
UUR_RETURN_ON_FATAL_FAILURE(addHelper.SetBuffer1DArg(buffer, nullptr));
UUR_RETURN_ON_FATAL_FAILURE(mulHelper.SetBuffer1DArg(buffer, nullptr));

for (size_t i = 0; i < 10; i++) {
constexpr uint32_t ONE = 1;
urEnqueueMemBufferWrite(queue, buffer, true, 0, sizeof(uint32_t), &ONE, 0,
nullptr, nullptr);
ASSERT_SUCCESS(urEnqueueMemBufferWrite(
queue, buffer, true, 0, sizeof(uint32_t), &ONE, 0, nullptr, nullptr));
ASSERT_SUCCESS(urEnqueueEventsWaitWithBarrier(queue, 0, nullptr, nullptr));
ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, add_kernel, 1, &offset, &count,
nullptr, 0, nullptr, 0, nullptr,
Expand Down
45 changes: 25 additions & 20 deletions test/conformance/enqueue/urEnqueueKernelLaunch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -88,8 +88,9 @@ TEST_P(urEnqueueKernelLaunchNoArgs3DTest, Success) {

TEST_P(urEnqueueKernelLaunchTest, Success) {
ur_mem_handle_t buffer = nullptr;
AddBuffer1DArg(sizeof(val) * global_size, &buffer);
AddPodArg(val);
UUR_RETURN_ON_FATAL_FAILURE(
AddBuffer1DArg(sizeof(val) * global_size, &buffer));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg(val));
ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, kernel, n_dimensions,
&global_offset, &global_size, nullptr, 0,
nullptr, 0, nullptr, nullptr));
Expand Down Expand Up @@ -134,8 +135,9 @@ TEST_P(urEnqueueKernelLaunchTest, SuccessWithLaunchProperties) {
}

ur_mem_handle_t buffer = nullptr;
AddBuffer1DArg(sizeof(val) * global_size, &buffer);
AddPodArg(val);
UUR_RETURN_ON_FATAL_FAILURE(
AddBuffer1DArg(sizeof(val) * global_size, &buffer));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg(val));

ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, kernel, n_dimensions,
&global_offset, &global_size, nullptr, 1,
Expand All @@ -147,8 +149,9 @@ TEST_P(urEnqueueKernelLaunchTest, SuccessWithLaunchProperties) {

TEST_P(urEnqueueKernelLaunchTest, SuccessNoOffset) {
ur_mem_handle_t buffer = nullptr;
AddBuffer1DArg(sizeof(val) * global_size, &buffer);
AddPodArg(val);
UUR_RETURN_ON_FATAL_FAILURE(
AddBuffer1DArg(sizeof(val) * global_size, &buffer));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg(val));
ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, kernel, n_dimensions, nullptr,
&global_size, nullptr, 0, nullptr, 0,
nullptr, nullptr));
Expand Down Expand Up @@ -218,8 +221,9 @@ TEST_P(urEnqueueKernelLaunchTest, InvalidWorkGroupSize) {
// an error
size_t local_size = 31;
ur_mem_handle_t buffer = nullptr;
AddBuffer1DArg(sizeof(val) * global_size, &buffer);
AddPodArg(val);
UUR_RETURN_ON_FATAL_FAILURE(
AddBuffer1DArg(sizeof(val) * global_size, &buffer));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg(val));
auto result = urEnqueueKernelLaunch(queue, kernel, n_dimensions,
&global_offset, &global_size, &local_size,
0, nullptr, 0, nullptr, nullptr);
Expand Down Expand Up @@ -258,7 +262,7 @@ TEST_P(urEnqueueKernelLaunchKernelSubGroupTest, Success) {
UUR_KNOWN_FAILURE_ON(uur::CUDA{});

ur_mem_handle_t buffer = nullptr;
AddBuffer1DArg(sizeof(size_t), &buffer);
UUR_RETURN_ON_FATAL_FAILURE(AddBuffer1DArg(sizeof(size_t), &buffer));
ASSERT_SUCCESS(urEnqueueKernelLaunch(
queue, kernel, n_dimensions, global_offset.data(), global_size.data(),
nullptr, 0, nullptr, 0, nullptr, nullptr));
Expand All @@ -275,13 +279,13 @@ struct Pair {
TEST_P(urEnqueueKernelLaunchKernelStandardTest, Success) {
uint32_t expected_result = 2410;
ur_mem_handle_t output = nullptr;
AddBuffer1DArg(sizeof(uint32_t), &output);
AddPodArg(true);
AddPodArg<uint8_t>(2);
AddPodArg<uint32_t>(3);
AddPodArg<uint64_t>(5);
AddPodArg<Pair>({7, 5});
AddPodArg<float>(11.0);
UUR_RETURN_ON_FATAL_FAILURE(AddBuffer1DArg(sizeof(uint32_t), &output));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg(true));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg<uint8_t>(2));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg<uint32_t>(3));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg<uint64_t>(5));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg<Pair>({7, 5}));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg<float>(11.0));

ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, kernel, n_dimensions, &offset,
&global_size, nullptr, 0, nullptr, 0,
Expand Down Expand Up @@ -371,8 +375,8 @@ UUR_DEVICE_TEST_SUITE_WITH_PARAM(

TEST_P(urEnqueueKernelLaunchTestWithParam, Success) {
ur_mem_handle_t buffer = nullptr;
AddBuffer1DArg(buffer_size, &buffer);
AddPodArg(val);
UUR_RETURN_ON_FATAL_FAILURE(AddBuffer1DArg(buffer_size, &buffer));
UUR_RETURN_ON_FATAL_FAILURE(AddPodArg(val));
ASSERT_SUCCESS(urEnqueueKernelLaunch(queue, kernel, n_dimensions,
global_offset, global_range, nullptr, 0,
nullptr, 0, nullptr, nullptr));
Expand Down Expand Up @@ -624,8 +628,9 @@ TEST_P(urEnqueueKernelLaunchMultiDeviceTest, KernelLaunchReadDifferentQueues) {
uur::KernelLaunchHelper{platform, context, kernel, queues[0]};

ur_mem_handle_t buffer = nullptr;
helper.AddBuffer1DArg(sizeof(val) * global_size, &buffer, nullptr);
helper.AddPodArg(val);
UUR_RETURN_ON_FATAL_FAILURE(
helper.AddBuffer1DArg(sizeof(val) * global_size, &buffer, nullptr));
UUR_RETURN_ON_FATAL_FAILURE(helper.AddPodArg(val));
ASSERT_SUCCESS(urEnqueueKernelLaunch(queues[0], kernel, n_dimensions,
&global_offset, &global_size, nullptr, 0,
nullptr, 0, nullptr, nullptr));
Expand Down