@@ -27,6 +27,58 @@ class MemoryModuleTest : public lzt::SysmanCtsClass {};
27
27
#define MEMORY_TEST MemoryModuleTest
28
28
#endif // USE_ZESINIT
29
29
30
+ ze_result_t copy_workload (ze_device_handle_t device,
31
+ ze_device_mem_alloc_desc_t *device_desc,
32
+ void *src_ptr, void *dst_ptr, int32_t local_size) {
33
+
34
+ ze_result_t result = ZE_RESULT_SUCCESS;
35
+ void *src_buffer = src_ptr;
36
+ void *dst_buffer = dst_ptr;
37
+ int32_t offset = 0 ;
38
+
39
+ ze_module_handle_t module = lzt::create_module (
40
+ device, " copy_module.spv" , ZE_MODULE_FORMAT_IL_SPIRV, nullptr , nullptr );
41
+ ze_kernel_handle_t function = lzt::create_function (module , " copy_data" );
42
+
43
+ lzt::set_group_size (function, 1 , 1 , 1 );
44
+ lzt::set_argument_value (function, 0 , sizeof (src_buffer), &src_buffer);
45
+ lzt::set_argument_value (function, 1 , sizeof (dst_buffer), &dst_buffer);
46
+ lzt::set_argument_value (function, 2 , sizeof (int32_t ), &offset);
47
+ lzt::set_argument_value (function, 3 , sizeof (int32_t ), &local_size);
48
+
49
+ ze_command_list_handle_t cmd_list = lzt::create_command_list (device);
50
+
51
+ const int32_t group_count_x = 1 ;
52
+ const int32_t group_count_y = 1 ;
53
+ ze_group_count_t tg;
54
+ tg.groupCountX = group_count_x;
55
+ tg.groupCountY = group_count_y;
56
+ tg.groupCountZ = 1 ;
57
+
58
+ result = zeCommandListAppendLaunchKernel (cmd_list, function, &tg, nullptr , 0 ,
59
+ nullptr );
60
+ if (result != ZE_RESULT_SUCCESS) {
61
+ return result;
62
+ }
63
+
64
+ lzt::append_barrier (cmd_list, nullptr , 0 , nullptr );
65
+ lzt::close_command_list (cmd_list);
66
+ ze_command_queue_handle_t cmd_q = lzt::create_command_queue (device);
67
+
68
+ result = zeCommandQueueExecuteCommandLists (cmd_q, 1 , &cmd_list, nullptr );
69
+ if (result != ZE_RESULT_SUCCESS) {
70
+ return result;
71
+ }
72
+
73
+ lzt::synchronize (cmd_q, UINT64_MAX);
74
+ lzt::destroy_command_queue (cmd_q);
75
+ lzt::destroy_command_list (cmd_list);
76
+ lzt::destroy_function (function);
77
+ lzt::destroy_module (module );
78
+
79
+ return result;
80
+ }
81
+
30
82
TEST_F (
31
83
MEMORY_TEST,
32
84
GivenComponentCountZeroWhenRetrievingSysmanHandlesThenNonZeroCountIsReturned) {
0 commit comments