MLIR  22.0.0git
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
DynamicEventPool Struct Reference

Public Member Functions

 DynamicEventPool (L0RTContextWrapper *rtCtx)
 
 DynamicEventPool (const DynamicEventPool &)=delete
 
DynamicEventPooloperator= (const DynamicEventPool &)=delete
 
 DynamicEventPool (DynamicEventPool &&) noexcept=default
 
DynamicEventPooloperator= (DynamicEventPool &&) noexcept=default
 
 ~DynamicEventPool ()
 
void createNewPool (size_t numEvents)
 
ze_event_handle_t takeEvent ()
 
void releaseEvent (ze_event_handle_t event)
 

Public Attributes

std::vector< UniqueZeEventPooleventPools
 
std::vector< UniqueZeEventavailableEvents
 
std::unordered_map< ze_event_handle_t, UniqueZeEventtakenEvents
 
size_t maxEventsCount {32768}
 
size_t currentEventsLimit {0}
 
size_t currentEventsCnt {0}
 
L0RTContextWrapperrtCtx
 

Static Public Attributes

constexpr static size_t numEventsPerPool {128}
 

Detailed Description

Definition at line 244 of file LevelZeroRuntimeWrappers.cpp.

Constructor & Destructor Documentation

◆ DynamicEventPool() [1/3]

DynamicEventPool::DynamicEventPool ( L0RTContextWrapper rtCtx)
inline

Definition at line 259 of file LevelZeroRuntimeWrappers.cpp.

◆ DynamicEventPool() [2/3]

DynamicEventPool::DynamicEventPool ( const DynamicEventPool )
delete

◆ DynamicEventPool() [3/3]

DynamicEventPool::DynamicEventPool ( DynamicEventPool &&  )
defaultnoexcept

◆ ~DynamicEventPool()

DynamicEventPool::~DynamicEventPool ( )
inline

Definition at line 270 of file LevelZeroRuntimeWrappers.cpp.

Member Function Documentation

◆ createNewPool()

void DynamicEventPool::createNewPool ( size_t  numEvents)
inline

◆ operator=() [1/2]

DynamicEventPool& DynamicEventPool::operator= ( const DynamicEventPool )
delete

◆ operator=() [2/2]

DynamicEventPool& DynamicEventPool::operator= ( DynamicEventPool &&  )
defaultnoexcept

◆ releaseEvent()

void DynamicEventPool::releaseEvent ( ze_event_handle_t  event)
inline

Definition at line 320 of file LevelZeroRuntimeWrappers.cpp.

References L0_SAFE_CALL.

Referenced by mgpuEventDestroy(), and StreamWrapper::sync().

◆ takeEvent()

ze_event_handle_t DynamicEventPool::takeEvent ( )
inline

Definition at line 287 of file LevelZeroRuntimeWrappers.cpp.

References L0_SAFE_CALL.

Referenced by StreamWrapper::enqueueOp(), and mgpuEventCreate().

Member Data Documentation

◆ availableEvents

std::vector<UniqueZeEvent> DynamicEventPool::availableEvents

Definition at line 248 of file LevelZeroRuntimeWrappers.cpp.

◆ currentEventsCnt

size_t DynamicEventPool::currentEventsCnt {0}

Definition at line 256 of file LevelZeroRuntimeWrappers.cpp.

◆ currentEventsLimit

size_t DynamicEventPool::currentEventsLimit {0}

Definition at line 255 of file LevelZeroRuntimeWrappers.cpp.

◆ eventPools

std::vector<UniqueZeEventPool> DynamicEventPool::eventPools

Definition at line 247 of file LevelZeroRuntimeWrappers.cpp.

◆ maxEventsCount

size_t DynamicEventPool::maxEventsCount {32768}

Definition at line 254 of file LevelZeroRuntimeWrappers.cpp.

◆ numEventsPerPool

constexpr static size_t DynamicEventPool::numEventsPerPool {128}
staticconstexpr

Definition at line 245 of file LevelZeroRuntimeWrappers.cpp.

◆ rtCtx

L0RTContextWrapper* DynamicEventPool::rtCtx

Definition at line 257 of file LevelZeroRuntimeWrappers.cpp.

◆ takenEvents

std::unordered_map<ze_event_handle_t, UniqueZeEvent> DynamicEventPool::takenEvents

Definition at line 249 of file LevelZeroRuntimeWrappers.cpp.


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