summaryrefslogtreecommitdiff
path: root/offload/unittests/OffloadAPI/device
diff options
context:
space:
mode:
authorRoss Brunton <ross@codeplay.com>2025-07-02 16:33:54 +0100
committerGitHub <noreply@github.com>2025-07-02 16:33:54 +0100
commit7d52b0983e0bee3c1d5dbe04ae2adfd33f0265e5 (patch)
tree1939f550b4b9baefe6b59548c7fb847016bcbec3 /offload/unittests/OffloadAPI/device
parentab42c4abe86c454a6812d837a7f2a8d5b9671fdf (diff)
[Offload] Add `MAX_WORK_GROUP_SIZE` device info query (#143718)
This adds a new device info query for the maximum workgroup/block size for each dimension.
Diffstat (limited to 'offload/unittests/OffloadAPI/device')
-rw-r--r--offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp9
-rw-r--r--offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp8
2 files changed, 17 insertions, 0 deletions
diff --git a/offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp b/offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
index 0247744911ea..c534c4520599 100644
--- a/offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
+++ b/offload/unittests/OffloadAPI/device/olGetDeviceInfo.cpp
@@ -77,6 +77,15 @@ TEST_P(olGetDeviceInfoTest, SuccessDriverVersion) {
ASSERT_EQ(std::strlen(DriverVersion.data()), Size - 1);
}
+TEST_P(olGetDeviceInfoTest, SuccessMaxWorkGroupSize) {
+ ol_dimensions_t Value{0, 0, 0};
+ ASSERT_SUCCESS(olGetDeviceInfo(Device, OL_DEVICE_INFO_MAX_WORK_GROUP_SIZE,
+ sizeof(Value), &Value));
+ ASSERT_GT(Value.x, 0u);
+ ASSERT_GT(Value.y, 0u);
+ ASSERT_GT(Value.z, 0u);
+}
+
TEST_P(olGetDeviceInfoTest, InvalidNullHandleDevice) {
ol_device_type_t DeviceType;
ASSERT_ERROR(OL_ERRC_INVALID_NULL_HANDLE,
diff --git a/offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp b/offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp
index edd2704a722d..a908078a2521 100644
--- a/offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp
+++ b/offload/unittests/OffloadAPI/device/olGetDeviceInfoSize.cpp
@@ -44,6 +44,14 @@ TEST_P(olGetDeviceInfoSizeTest, SuccessDriverVersion) {
ASSERT_NE(Size, 0ul);
}
+TEST_P(olGetDeviceInfoSizeTest, SuccessMaxWorkGroupSize) {
+ size_t Size = 0;
+ ASSERT_SUCCESS(
+ olGetDeviceInfoSize(Device, OL_DEVICE_INFO_MAX_WORK_GROUP_SIZE, &Size));
+ ASSERT_EQ(Size, sizeof(ol_dimensions_t));
+ ASSERT_EQ(Size, sizeof(uint32_t) * 3);
+}
+
TEST_P(olGetDeviceInfoSizeTest, InvalidNullHandle) {
size_t Size = 0;
ASSERT_ERROR(OL_ERRC_INVALID_NULL_HANDLE,