|
37 | 37 | src_ptr = defi['srcptr'] |
38 | 38 | record_copy_over(state,ctx,src_ptr,dst_ptr) |
39 | 39 | check_memory_residency(state,ctx,defi,src_ptr,dst_ptr,"zeCommandListAppendMemoryCopyRegion") |
40 | | - check_copy_over_data_race(state,ctx,defi,src_ptr,dst_ptr) |
| 40 | + check_copy_over_data_race(state,ctx,src_ptr,dst_ptr) |
41 | 41 | } |
42 | 42 |
|
43 | | -#remove the elements from state.memory_in_transit |
44 | | -$on_successful_exit["zeCommandListAppendMemoryCopyRegion"] = lambda{|state, ctx, defi| |
45 | | - memory_allocations = state.find_objects(ctx, 'memory_allocation') |
46 | | - context = state.find_object(ctx, 'context', 'hContext') |
47 | | - device = state.find_object(ctx, 'device','hDevice') |
48 | | - size = state.find_param(ctx,"size") |
49 | | - handle = defi['pptr_val'] |
50 | | - |
51 | | -} |
52 | 43 |
|
53 | 44 | $upon_entry["zeDeviceGetProperties"] = lambda{|state, ctx, defi| |
54 | 45 | device_ptr = defi['hDevice'] |
|
82 | 73 | $upon_entry["zeCommandListAppendLaunchCooperativeKernel"] = lambda { |state, ctx, defi| |
83 | 74 | command_lists = state.find_objects(ctx, 'command_list') |
84 | 75 | cmd_list = command_lists[defi['hCommandList']] |
85 | | - check_group_property_queued(stte,ctx,defi,cmd_list.device) |
| 76 | + check_group_property_queued(stte,ctx,cmd_list.device) |
86 | 77 | } |
87 | 78 |
|
88 | 79 | #when command queue is executed, the associated fence's status is set to IN_USE |
|
95 | 86 | #check if the group property was hardcoded |
96 | 87 | command_queues = state.find_objects(ctx, 'command_queue') |
97 | 88 | command_queue = command_queues[defi['hCommandQueue']] |
98 | | - check_group_property_queued(state,ctx,defi,command_queue.device) |
| 89 | + check_group_property_queued(state,ctx,command_queue.device) |
99 | 90 | } |
100 | 91 |
|
101 | 92 | #When a fence signals the host, set the fence's status to signaled |
102 | 93 | $upon_entry["zeFenceHostSynchronize"] = lambda { |state, ctx, defi| |
103 | | - fences = nil |
104 | 94 | curr_fence = ZEModel::Fence.get_fence(state,ctx,defi) |
105 | 95 | return unless curr_fence |
106 | 96 | if curr_fence.status == ZEModel::Fence.class_variable_get(:@@SIGNALED) |
|
317 | 307 | altdesc_val = state.find_param(ctx, 'altdesc_val') |
318 | 308 | altdesc = state.to_struct(altdesc_val, ZE::ZECommandQueueDesc) |
319 | 309 | handle = defi['phCommandList_val'] |
320 | | - check_group_property_queued(state,ctx,defi,device) |
| 310 | + check_group_property_queued(state,ctx,device) |
321 | 311 | command_lists[handle] = ZEModel::CommandList.new(handle, context, device, nil, altdesc) |
322 | 312 | command_lists[handle].immediate = true #immdediate command lists cannot be passed to the execute command lists |
323 | 313 | command_list[handle].associated_ordinal = altdesc.ordinal |
|
440 | 430 |
|
441 | 431 | if state.print_tracker["zeMemAllocDevice::StypeMisuse"] == 0 |
442 | 432 | state.print_tracker["zeMemAllocDevice::StypeMisuse"] = 1 |
443 | | - check_struct_stype_misuse(state,ctx,defi,:ZE_STRUCTURE_TYPE_DEVICE_MEM_ALLOC_DESC, device_desc[:stype].to_sym) |
| 433 | + check_struct_stype_misuse(state,ctx,:ZE_STRUCTURE_TYPE_DEVICE_MEM_ALLOC_DESC, device_desc[:stype].to_sym) |
444 | 434 | end |
445 | 435 | } |
446 | 436 |
|
|
456 | 446 | memory_allocations[handle] = memory_allocation |
457 | 447 | device.memory_allocations[handle] = memory_allocation |
458 | 448 | } |
| 449 | + |
459 | 450 | #remove the transit info when the copy region returns |
460 | 451 | $on_successful_exit["zeCommandListAppendMemoryCopyRegion"] = lambda { |state, ctx, defi| |
461 | 452 | src_ptr = state.find_param(ctx,"srcptr") |
|
0 commit comments