@@ -102,9 +102,10 @@ ur_queue_immediate_in_order_t::ur_queue_immediate_in_order_t(
102
102
ownZeQueue) {}
103
103
104
104
ur_event_handle_t
105
- ur_queue_immediate_in_order_t ::getSignalEvent(ur_event_handle_t *hUserEvent) {
105
+ ur_queue_immediate_in_order_t ::getSignalEvent(ur_event_handle_t *hUserEvent,
106
+ ur_command_t commandType) {
106
107
if (hUserEvent) {
107
- *hUserEvent = eventPool->allocate (this );
108
+ *hUserEvent = eventPool->allocate (this , commandType );
108
109
return *hUserEvent;
109
110
} else {
110
111
return nullptr ;
@@ -217,7 +218,7 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueKernelLaunch(
217
218
zeThreadGroupDimensions, WG, workDim,
218
219
pGlobalWorkSize, pLocalWorkSize));
219
220
220
- auto signalEvent = getSignalEvent (phEvent);
221
+ auto signalEvent = getSignalEvent (phEvent, UR_COMMAND_KERNEL_LAUNCH );
221
222
222
223
auto waitList = getWaitListView (phEventWaitList, numEventsInWaitList);
223
224
@@ -262,7 +263,7 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueEventsWait(
262
263
return UR_RESULT_SUCCESS;
263
264
}
264
265
265
- auto signalEvent = getSignalEvent (phEvent);
266
+ auto signalEvent = getSignalEvent (phEvent, UR_COMMAND_EVENTS_WAIT );
266
267
auto [pWaitEvents, numWaitEvents] =
267
268
getWaitListView (phEventWaitList, numEventsInWaitList);
268
269
@@ -292,8 +293,9 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueEventsWaitWithBarrier(
292
293
ur_result_t ur_queue_immediate_in_order_t::enqueueGenericCopyUnlocked (
293
294
ur_mem_handle_t src, ur_mem_handle_t dst, bool blocking, size_t srcOffset,
294
295
size_t dstOffset, size_t size, uint32_t numEventsInWaitList,
295
- const ur_event_handle_t *phEventWaitList, ur_event_handle_t *phEvent) {
296
- auto signalEvent = getSignalEvent (phEvent);
296
+ const ur_event_handle_t *phEventWaitList, ur_event_handle_t *phEvent,
297
+ ur_command_t commandType) {
298
+ auto signalEvent = getSignalEvent (phEvent, commandType);
297
299
298
300
auto waitList = getWaitListView (phEventWaitList, numEventsInWaitList);
299
301
@@ -349,9 +351,9 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferRead(
349
351
std::scoped_lock<ur_shared_mutex, ur_shared_mutex> lock (this ->Mutex ,
350
352
hBuffer->getMutex ());
351
353
352
- return enqueueGenericCopyUnlocked (hBuffer, &dstHandle, blockingRead, offset,
353
- 0 , size, numEventsInWaitList,
354
- phEventWaitList, phEvent);
354
+ return enqueueGenericCopyUnlocked (
355
+ hBuffer, &dstHandle, blockingRead, offset, 0 , size, numEventsInWaitList,
356
+ phEventWaitList, phEvent, UR_COMMAND_MEM_BUFFER_READ );
355
357
}
356
358
357
359
ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferWrite (
@@ -367,21 +369,22 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferWrite(
367
369
std::scoped_lock<ur_shared_mutex, ur_shared_mutex> lock (this ->Mutex ,
368
370
hBuffer->getMutex ());
369
371
370
- return enqueueGenericCopyUnlocked (&srcHandle, hBuffer, blockingWrite, 0 ,
371
- offset, size, numEventsInWaitList,
372
- phEventWaitList, phEvent);
372
+ return enqueueGenericCopyUnlocked (
373
+ &srcHandle, hBuffer, blockingWrite, 0 , offset, size, numEventsInWaitList,
374
+ phEventWaitList, phEvent, UR_COMMAND_MEM_BUFFER_WRITE );
373
375
}
374
376
375
377
ur_result_t ur_queue_immediate_in_order_t::enqueueRegionCopyUnlocked (
376
378
ur_mem_handle_t src, ur_mem_handle_t dst, bool blocking,
377
379
ur_rect_offset_t srcOrigin, ur_rect_offset_t dstOrigin,
378
380
ur_rect_region_t region, size_t srcRowPitch, size_t srcSlicePitch,
379
381
size_t dstRowPitch, size_t dstSlicePitch, uint32_t numEventsInWaitList,
380
- const ur_event_handle_t *phEventWaitList, ur_event_handle_t *phEvent) {
382
+ const ur_event_handle_t *phEventWaitList, ur_event_handle_t *phEvent,
383
+ ur_command_t commandType) {
381
384
auto zeParams = ur2zeRegionParams (srcOrigin, dstOrigin, region, srcRowPitch,
382
385
dstRowPitch, srcSlicePitch, dstSlicePitch);
383
386
384
- auto signalEvent = getSignalEvent (phEvent);
387
+ auto signalEvent = getSignalEvent (phEvent, commandType );
385
388
386
389
auto waitList = getWaitListView (phEventWaitList, numEventsInWaitList);
387
390
@@ -442,7 +445,8 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferReadRect(
442
445
return enqueueRegionCopyUnlocked (
443
446
hBuffer, &dstHandle, blockingRead, bufferOrigin, hostOrigin, region,
444
447
bufferRowPitch, bufferSlicePitch, hostRowPitch, hostSlicePitch,
445
- numEventsInWaitList, phEventWaitList, phEvent);
448
+ numEventsInWaitList, phEventWaitList, phEvent,
449
+ UR_COMMAND_MEM_BUFFER_READ_RECT);
446
450
}
447
451
448
452
ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferWriteRect (
@@ -462,7 +466,8 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferWriteRect(
462
466
return enqueueRegionCopyUnlocked (
463
467
&srcHandle, hBuffer, blockingWrite, hostOrigin, bufferOrigin, region,
464
468
hostRowPitch, hostSlicePitch, bufferRowPitch, bufferSlicePitch,
465
- numEventsInWaitList, phEventWaitList, phEvent);
469
+ numEventsInWaitList, phEventWaitList, phEvent,
470
+ UR_COMMAND_MEM_BUFFER_WRITE_RECT);
466
471
}
467
472
468
473
ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferCopy (
@@ -481,7 +486,8 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferCopy(
481
486
482
487
return enqueueGenericCopyUnlocked (hBufferSrc, hBufferDst, false , srcOffset,
483
488
dstOffset, size, numEventsInWaitList,
484
- phEventWaitList, phEvent);
489
+ phEventWaitList, phEvent,
490
+ UR_COMMAND_MEM_BUFFER_COPY);
485
491
}
486
492
487
493
ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferCopyRect (
@@ -499,7 +505,7 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferCopyRect(
499
505
return enqueueRegionCopyUnlocked (
500
506
hBufferSrc, hBufferDst, false , srcOrigin, dstOrigin, region, srcRowPitch,
501
507
srcSlicePitch, dstRowPitch, dstSlicePitch, numEventsInWaitList,
502
- phEventWaitList, phEvent);
508
+ phEventWaitList, phEvent, UR_COMMAND_MEM_BUFFER_COPY_RECT );
503
509
}
504
510
505
511
ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferFill (
@@ -515,7 +521,7 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferFill(
515
521
516
522
return enqueueGenericFillUnlocked (hBuffer, offset, patternSize, pPattern,
517
523
size, numEventsInWaitList, phEventWaitList,
518
- phEvent);
524
+ phEvent, UR_COMMAND_MEM_BUFFER_FILL );
519
525
}
520
526
521
527
ur_result_t ur_queue_immediate_in_order_t::enqueueMemImageRead (
@@ -580,7 +586,7 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemBufferMap(
580
586
std::scoped_lock<ur_shared_mutex, ur_shared_mutex> lock (this ->Mutex ,
581
587
hBuffer->getMutex ());
582
588
583
- auto signalEvent = getSignalEvent (phEvent);
589
+ auto signalEvent = getSignalEvent (phEvent, UR_COMMAND_MEM_BUFFER_MAP );
584
590
585
591
auto waitList = getWaitListView (phEventWaitList, numEventsInWaitList);
586
592
@@ -619,7 +625,7 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemUnmap(
619
625
620
626
std::scoped_lock<ur_shared_mutex> lock (this ->Mutex );
621
627
622
- auto signalEvent = getSignalEvent (phEvent);
628
+ auto signalEvent = getSignalEvent (phEvent, UR_COMMAND_MEM_UNMAP );
623
629
624
630
auto waitList = getWaitListView (phEventWaitList, numEventsInWaitList);
625
631
@@ -648,9 +654,10 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueMemUnmap(
648
654
ur_result_t ur_queue_immediate_in_order_t::enqueueGenericFillUnlocked (
649
655
ur_mem_handle_t dst, size_t offset, size_t patternSize,
650
656
const void *pPattern, size_t size, uint32_t numEventsInWaitList,
651
- const ur_event_handle_t *phEventWaitList, ur_event_handle_t *phEvent) {
657
+ const ur_event_handle_t *phEventWaitList, ur_event_handle_t *phEvent,
658
+ ur_command_t commandType) {
652
659
653
- auto signalEvent = getSignalEvent (phEvent);
660
+ auto signalEvent = getSignalEvent (phEvent, commandType );
654
661
655
662
auto waitList = getWaitListView (phEventWaitList, numEventsInWaitList);
656
663
@@ -694,7 +701,7 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueUSMFill(
694
701
ur_usm_handle_t_ dstHandle (hContext, size, pMem);
695
702
return enqueueGenericFillUnlocked (&dstHandle, 0 , patternSize, pPattern, size,
696
703
numEventsInWaitList, phEventWaitList,
697
- phEvent);
704
+ phEvent, UR_COMMAND_USM_FILL );
698
705
}
699
706
700
707
ur_result_t ur_queue_immediate_in_order_t::enqueueUSMMemcpy (
@@ -706,7 +713,7 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueUSMMemcpy(
706
713
707
714
std::scoped_lock<ur_shared_mutex> lock (this ->Mutex );
708
715
709
- auto signalEvent = getSignalEvent (phEvent);
716
+ auto signalEvent = getSignalEvent (phEvent, UR_COMMAND_USM_MEMCPY );
710
717
711
718
auto [pWaitEvents, numWaitEvents] =
712
719
getWaitListView (phEventWaitList, numEventsInWaitList);
@@ -734,7 +741,7 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueUSMPrefetch(
734
741
735
742
std::scoped_lock<ur_shared_mutex> lock (this ->Mutex );
736
743
737
- auto signalEvent = getSignalEvent (phEvent);
744
+ auto signalEvent = getSignalEvent (phEvent, UR_COMMAND_USM_PREFETCH );
738
745
739
746
auto [pWaitEvents, numWaitEvents] =
740
747
getWaitListView (phEventWaitList, numEventsInWaitList);
@@ -767,7 +774,7 @@ ur_queue_immediate_in_order_t::enqueueUSMAdvise(const void *pMem, size_t size,
767
774
768
775
auto zeAdvice = ur_cast<ze_memory_advice_t >(advice);
769
776
770
- auto signalEvent = getSignalEvent (phEvent);
777
+ auto signalEvent = getSignalEvent (phEvent, UR_COMMAND_USM_ADVISE );
771
778
772
779
auto [pWaitEvents, numWaitEvents] = getWaitListView (nullptr , 0 );
773
780
@@ -983,7 +990,8 @@ ur_result_t ur_queue_immediate_in_order_t::enqueueTimestampRecordingExp(
983
990
984
991
std::scoped_lock<ur_shared_mutex> lock (this ->Mutex );
985
992
986
- auto signalEvent = getSignalEvent (phEvent);
993
+ auto signalEvent =
994
+ getSignalEvent (phEvent, UR_COMMAND_TIMESTAMP_RECORDING_EXP);
987
995
988
996
if (!signalEvent) {
989
997
return UR_RESULT_ERROR_INVALID_NULL_HANDLE;
0 commit comments