alpaka
Abstraction Library for Parallel Kernel Acceleration
alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl Struct Referencefinal

The CPU collective device queue implementation. More...

#include <QueueCpuOmp2Collective.hpp>

+ Inheritance diagram for alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl:

Public Member Functions

 QueueCpuOmp2CollectiveImpl (DevCpu const &dev) noexcept
 
void busyWaitUntilBlockingQueueEmpty ()
 
void enqueue (EventCpu &ev) final
 
void wait (EventCpu const &ev) final
 
- Public Member Functions inherited from alpaka::IGenericThreadsQueue< TDev >
virtual ~IGenericThreadsQueue ()=default
 
virtual void enqueue (EventGenericThreads< TDev > &)=0
 enqueue the event More...
 
virtual void wait (EventGenericThreads< TDev > const &)=0
 waiting for the event More...
 

Public Attributes

QueueCpuBlocking blockingQueue
 
DevCpu const m_dev
 The device this queue is bound to. More...
 
std::mutex m_mutex
 
std::atomic< uint32_t > m_uCurrentlyExecutingTask = 0
 

Detailed Description

The CPU collective device queue implementation.

Definition at line 41 of file QueueCpuOmp2Collective.hpp.

Constructor & Destructor Documentation

◆ QueueCpuOmp2CollectiveImpl()

alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl::QueueCpuOmp2CollectiveImpl ( DevCpu const &  dev)
inlineexplicitnoexcept

Definition at line 46 of file QueueCpuOmp2Collective.hpp.

Member Function Documentation

◆ busyWaitUntilBlockingQueueEmpty()

void alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl::busyWaitUntilBlockingQueueEmpty ( )
inline

Definition at line 60 of file QueueCpuOmp2Collective.hpp.

◆ enqueue()

void alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl::enqueue ( EventCpu ev)
inlinefinal

Definition at line 50 of file QueueCpuOmp2Collective.hpp.

◆ wait()

void alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl::wait ( EventCpu const &  ev)
inlinefinal

Definition at line 55 of file QueueCpuOmp2Collective.hpp.

Member Data Documentation

◆ blockingQueue

QueueCpuBlocking alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl::blockingQueue

Definition at line 68 of file QueueCpuOmp2Collective.hpp.

◆ m_dev

DevCpu const alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl::m_dev

The device this queue is bound to.

Definition at line 66 of file QueueCpuOmp2Collective.hpp.

◆ m_mutex

std::mutex alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl::m_mutex
mutable

Definition at line 67 of file QueueCpuOmp2Collective.hpp.

◆ m_uCurrentlyExecutingTask

std::atomic<uint32_t> alpaka::cpu::detail::QueueCpuOmp2CollectiveImpl::m_uCurrentlyExecutingTask = 0

Definition at line 69 of file QueueCpuOmp2Collective.hpp.


The documentation for this struct was generated from the following file: