@@ -123,6 +123,10 @@ TEST_P(BufferFillCommandTest, UpdateParameters) {
123123
124124// Test updating the global size so that the fill outputs to a larger buffer
125125TEST_P (BufferFillCommandTest, UpdateGlobalSize) {
126+ if (!updatable_execution_range_support) {
127+ GTEST_SKIP () << " Execution range update is not supported." ;
128+ }
129+
126130 ASSERT_SUCCESS (urCommandBufferEnqueueExp (updatable_cmd_buf_handle, queue, 0 ,
127131 nullptr , nullptr ));
128132 ASSERT_SUCCESS (urQueueFinish (queue));
@@ -153,7 +157,7 @@ TEST_P(BufferFillCommandTest, UpdateGlobalSize) {
153157 0 , // numNewPointerArgs
154158 0 , // numNewValueArgs
155159 0 , // numNewExecInfos
156- 0 , // newWorkDim
160+ 1 , // newWorkDim
157161 &new_output_desc, // pNewMemObjArgList
158162 nullptr , // pNewPointerArgList
159163 nullptr , // pNewValueArgList
@@ -180,7 +184,8 @@ TEST_P(BufferFillCommandTest, SeparateUpdateCalls) {
180184 ASSERT_SUCCESS (urQueueFinish (queue));
181185 ValidateBuffer (buffer, sizeof (val) * global_size, val);
182186
183- size_t new_global_size = 64 ;
187+ size_t new_global_size =
188+ updatable_execution_range_support ? 64 : global_size;
184189 const size_t new_buffer_size = sizeof (val) * new_global_size;
185190 ASSERT_SUCCESS (urMemBufferCreate (context, UR_MEM_FLAG_READ_WRITE,
186191 new_buffer_size, nullptr , &new_buffer));
@@ -247,25 +252,28 @@ TEST_P(BufferFillCommandTest, SeparateUpdateCalls) {
247252 ASSERT_SUCCESS (urCommandBufferUpdateKernelLaunchExp (command_handle,
248253 &input_update_desc));
249254
250- ur_exp_command_buffer_update_kernel_launch_desc_t global_size_update_desc = {
251- UR_STRUCTURE_TYPE_EXP_COMMAND_BUFFER_UPDATE_KERNEL_LAUNCH_DESC, // stype
252- nullptr , // pNext
253- 0 , // numNewMemObjArgs
254- 0 , // numNewPointerArgs
255- 0 , // numNewValueArgs
256- 0 , // numNewExecInfos
257- 0 , // newWorkDim
258- nullptr , // pNewMemObjArgList
259- nullptr , // pNewPointerArgList
260- nullptr , // pNewValueArgList
261- nullptr , // pNewExecInfoList
262- nullptr , // pNewGlobalWorkOffset
263- &new_global_size, // pNewGlobalWorkSize
264- nullptr , // pNewLocalWorkSize
265- };
266-
267- ASSERT_SUCCESS (urCommandBufferUpdateKernelLaunchExp (
268- command_handle, &global_size_update_desc));
255+ if (updatable_execution_range_support) {
256+ ur_exp_command_buffer_update_kernel_launch_desc_t
257+ global_size_update_desc = {
258+ UR_STRUCTURE_TYPE_EXP_COMMAND_BUFFER_UPDATE_KERNEL_LAUNCH_DESC, // stype
259+ nullptr , // pNext
260+ 0 , // numNewMemObjArgs
261+ 0 , // numNewPointerArgs
262+ 0 , // numNewValueArgs
263+ 0 , // numNewExecInfos
264+ 0 , // newWorkDim
265+ nullptr , // pNewMemObjArgList
266+ nullptr , // pNewPointerArgList
267+ nullptr , // pNewValueArgList
268+ nullptr , // pNewExecInfoList
269+ nullptr , // pNewGlobalWorkOffset
270+ &new_global_size, // pNewGlobalWorkSize
271+ nullptr , // pNewLocalWorkSize
272+ };
273+
274+ ASSERT_SUCCESS (urCommandBufferUpdateKernelLaunchExp (
275+ command_handle, &global_size_update_desc));
276+ }
269277
270278 ASSERT_SUCCESS (urCommandBufferEnqueueExp (updatable_cmd_buf_handle, queue, 0 ,
271279 nullptr , nullptr ));
0 commit comments