Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
Realm::Hip::GPUStream Class Reference
module nullptr

#include <hip_internal.h>

Collaboration diagram for Realm::Hip::GPUStream:

Classes

struct  PendingEvent
 

Public Member Functions

 GPUStream (GPU *_gpu, GPUWorker *_worker, int rel_priority=0)
 
 ~GPUStream (void)
 
GPUget_gpu (void) const
 
REALM_INTERNAL_API_EXTERNAL_LINKAGE hipStream_t get_stream (void) const
 
void add_fence (GPUWorkFence *fence)
 
void add_start_event (GPUWorkStart *start)
 
void add_notification (GPUCompletionNotification *notification)
 
void wait_on_streams (const std::set< GPUStream * > &other_streams)
 
bool ok_to_submit_copy (size_t bytes, XferDes *xd)
 
bool reap_events (TimeLimit work_until)
 

Protected Member Functions

bool has_work (void) const
 
void add_event (hipEvent_t event, GPUWorkFence *fence, GPUCompletionNotification *notification=NULL, GPUWorkStart *start=NULL)
 

Protected Attributes

GPUgpu
 
GPUWorkerworker
 
hipStream_t stream
 
Mutex mutex
 
std::deque< PendingEventpending_events
 

Constructor & Destructor Documentation

◆ GPUStream()

Realm::Hip::GPUStream::GPUStream ( GPU _gpu,
GPUWorker _worker,
int  rel_priority = 0 
)

◆ ~GPUStream()

Realm::Hip::GPUStream::~GPUStream ( void  )

Member Function Documentation

◆ add_event()

void Realm::Hip::GPUStream::add_event ( hipEvent_t  event,
GPUWorkFence fence,
GPUCompletionNotification notification = NULL,
GPUWorkStart start = NULL 
)
protected

◆ add_fence()

void Realm::Hip::GPUStream::add_fence ( GPUWorkFence fence)

◆ add_notification()

void Realm::Hip::GPUStream::add_notification ( GPUCompletionNotification notification)

◆ add_start_event()

void Realm::Hip::GPUStream::add_start_event ( GPUWorkStart start)

◆ get_gpu()

GPU * Realm::Hip::GPUStream::get_gpu ( void  ) const

◆ get_stream()

REALM_INTERNAL_API_EXTERNAL_LINKAGE hipStream_t Realm::Hip::GPUStream::get_stream ( void  ) const

◆ has_work()

bool Realm::Hip::GPUStream::has_work ( void  ) const
protected

◆ ok_to_submit_copy()

bool Realm::Hip::GPUStream::ok_to_submit_copy ( size_t  bytes,
XferDes xd 
)

◆ reap_events()

bool Realm::Hip::GPUStream::reap_events ( TimeLimit  work_until)

◆ wait_on_streams()

void Realm::Hip::GPUStream::wait_on_streams ( const std::set< GPUStream * > &  other_streams)

Member Data Documentation

◆ gpu

GPU* Realm::Hip::GPUStream::gpu
protected

◆ mutex

Mutex Realm::Hip::GPUStream::mutex
protected

◆ pending_events

std::deque<PendingEvent> Realm::Hip::GPUStream::pending_events
protected

◆ stream

hipStream_t Realm::Hip::GPUStream::stream
protected

◆ worker

GPUWorker* Realm::Hip::GPUStream::worker
protected

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