21 #if defined(ALPAKA_ACC_GPU_CUDA_ENABLED) || defined(ALPAKA_ACC_GPU_HIP_ENABLED)
25 namespace uniform_cuda_hip::detail
28 template<
typename TApi>
34 , m_UniformCudaHipEvent()
51 &m_UniformCudaHipEvent,
52 (bBusyWait ? TApi::eventDefault : TApi::eventBlockingSync) | TApi::eventDisableTiming));
71 return m_UniformCudaHipEvent;
78 typename TApi::Event_t m_UniformCudaHipEvent;
83 template<
typename TApi>
90 :
m_spEventImpl(std::make_shared<uniform_cuda_hip::detail::EventUniformCudaHipImpl<TApi>>(dev, bBusyWait))
102 return !((*this) == rhs);
111 std::shared_ptr<uniform_cuda_hip::detail::EventUniformCudaHipImpl<TApi>>
m_spEventImpl;
117 template<
typename TApi>
124 template<
typename TApi>
129 return event.m_spEventImpl->m_dev;
134 template<
typename TApi>
142 typename TApi::Error_t ret = TApi::success;
144 ret = TApi::eventQuery(event.getNativeHandle()),
145 TApi::errorNotReady);
146 return (ret == TApi::success);
151 template<
typename TApi>
165 template<
typename TApi>
182 template<
typename TApi>
195 template<
typename TApi>
205 TApi::streamWaitEvent(queue.getNativeHandle(), event.getNativeHandle(), 0));
210 template<
typename TApi>
220 TApi::streamWaitEvent(queue.getNativeHandle(), event.getNativeHandle(), 0));
228 template<
typename TApi>
242 auto vQueues = dev.getAllQueues();
243 for(
auto&& spQueue : vQueues)
246 TApi::streamWaitEvent(spQueue->getNativeHandle(), event.getNativeHandle(), 0));
252 template<
typename TApi>
257 return event.getNativeHandle();
#define ALPAKA_DEBUG_MINIMAL_LOG_SCOPE
The alpaka accelerator library.
Tag used in class inheritance hierarchies that describes that a specific interface (TInterface) is im...