|
12 | 12 | #include "context.hpp" |
13 | 13 | #include "event.hpp" |
14 | 14 |
|
15 | | -void ur_queue_handle_t_::computeStreamWaitForBarrierIfNeeded( |
16 | | - hipStream_t Stream, uint32_t Stream_i) { |
| 15 | +template <> |
| 16 | +void hip_stream_queue::computeStreamWaitForBarrierIfNeeded(hipStream_t Stream, |
| 17 | + uint32_t Stream_i) { |
17 | 18 | if (BarrierEvent && !ComputeAppliedBarrier[Stream_i]) { |
18 | 19 | UR_CHECK_ERROR(hipStreamWaitEvent(Stream, BarrierEvent, 0)); |
19 | 20 | ComputeAppliedBarrier[Stream_i] = true; |
20 | 21 | } |
21 | 22 | } |
22 | 23 |
|
23 | | -void ur_queue_handle_t_::transferStreamWaitForBarrierIfNeeded( |
24 | | - hipStream_t Stream, uint32_t Stream_i) { |
| 24 | +template <> |
| 25 | +void hip_stream_queue::transferStreamWaitForBarrierIfNeeded(hipStream_t Stream, |
| 26 | + uint32_t Stream_i) { |
25 | 27 | if (BarrierEvent && !TransferAppliedBarrier[Stream_i]) { |
26 | 28 | UR_CHECK_ERROR(hipStreamWaitEvent(Stream, BarrierEvent, 0)); |
27 | 29 | TransferAppliedBarrier[Stream_i] = true; |
28 | 30 | } |
29 | 31 | } |
30 | 32 |
|
31 | | -ur_queue_handle_t ur_queue_handle_t_::getEventQueue(const ur_event_handle_t e) { |
| 33 | +template <> |
| 34 | +ur_queue_handle_t hip_stream_queue::getEventQueue(const ur_event_handle_t e) { |
32 | 35 | return e->getQueue(); |
33 | 36 | } |
34 | 37 |
|
| 38 | +template <> |
35 | 39 | uint32_t |
36 | | -ur_queue_handle_t_::getEventComputeStreamToken(const ur_event_handle_t e) { |
| 40 | +hip_stream_queue::getEventComputeStreamToken(const ur_event_handle_t e) { |
37 | 41 | return e->getComputeStreamToken(); |
38 | 42 | } |
39 | 43 |
|
40 | | -hipStream_t ur_queue_handle_t_::getEventStream(const ur_event_handle_t e) { |
| 44 | +template <> |
| 45 | +hipStream_t hip_stream_queue::getEventStream(const ur_event_handle_t e) { |
41 | 46 | return e->getStream(); |
42 | 47 | } |
43 | 48 |
|
@@ -76,7 +81,7 @@ urQueueCreate(ur_context_handle_t hContext, ur_device_handle_t hDevice, |
76 | 81 | : false; |
77 | 82 |
|
78 | 83 | QueueImpl = std::unique_ptr<ur_queue_handle_t_>(new ur_queue_handle_t_{ |
79 | | - IsOutOfOrder, hContext, hDevice, Flags, URFlags, Priority}); |
| 84 | + {IsOutOfOrder, hContext, hDevice, Flags, URFlags, Priority}}); |
80 | 85 |
|
81 | 86 | *phQueue = QueueImpl.release(); |
82 | 87 |
|
@@ -238,8 +243,8 @@ UR_APIEXPORT ur_result_t UR_APICALL urQueueCreateWithNativeHandle( |
238 | 243 |
|
239 | 244 | // Create queue and set num_compute_streams to 1, as computeHIPStreams has |
240 | 245 | // valid stream |
241 | | - *phQueue = new ur_queue_handle_t_{HIPStream, hContext, hDevice, |
242 | | - HIPFlags, Flags, isNativeHandleOwned}; |
| 246 | + *phQueue = new ur_queue_handle_t_{ |
| 247 | + {HIPStream, hContext, hDevice, HIPFlags, Flags, isNativeHandleOwned}}; |
243 | 248 |
|
244 | 249 | return UR_RESULT_SUCCESS; |
245 | 250 | } |
0 commit comments