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

#include <cuda_internal.h>

Collaboration diagram for Realm::Cuda::ContextSynchronizer:

Public Member Functions

 ContextSynchronizer (GPU *_gpu, CUcontext _context, CoreReservationSet &crs, int _max_threads)
 
 ~ContextSynchronizer ()
 
void add_fence (GPUWorkFence *fence)
 
void shutdown_threads ()
 
void thread_main ()
 

Protected Attributes

GPUgpu
 
CUcontext context
 
int max_threads
 
Mutex mutex
 
Mutex::CondVar condvar
 
bool shutdown_flag
 
GPUWorkFence::FenceList fences
 
int total_threads
 
int sleeping_threads
 
int syncing_threads
 
std::vector< Thread * > worker_threads
 
CoreReservationcore_rsrv
 

Constructor & Destructor Documentation

◆ ContextSynchronizer()

Realm::Cuda::ContextSynchronizer::ContextSynchronizer ( GPU _gpu,
CUcontext  _context,
CoreReservationSet crs,
int  _max_threads 
)

◆ ~ContextSynchronizer()

Realm::Cuda::ContextSynchronizer::~ContextSynchronizer ( )

Member Function Documentation

◆ add_fence()

void Realm::Cuda::ContextSynchronizer::add_fence ( GPUWorkFence fence)

◆ shutdown_threads()

void Realm::Cuda::ContextSynchronizer::shutdown_threads ( )

◆ thread_main()

void Realm::Cuda::ContextSynchronizer::thread_main ( )

Member Data Documentation

◆ condvar

Mutex::CondVar Realm::Cuda::ContextSynchronizer::condvar
protected

◆ context

CUcontext Realm::Cuda::ContextSynchronizer::context
protected

◆ core_rsrv

CoreReservation* Realm::Cuda::ContextSynchronizer::core_rsrv
protected

◆ fences

GPUWorkFence::FenceList Realm::Cuda::ContextSynchronizer::fences
protected

◆ gpu

GPU* Realm::Cuda::ContextSynchronizer::gpu
protected

◆ max_threads

int Realm::Cuda::ContextSynchronizer::max_threads
protected

◆ mutex

Mutex Realm::Cuda::ContextSynchronizer::mutex
protected

◆ shutdown_flag

bool Realm::Cuda::ContextSynchronizer::shutdown_flag
protected

◆ sleeping_threads

int Realm::Cuda::ContextSynchronizer::sleeping_threads
protected

◆ syncing_threads

int Realm::Cuda::ContextSynchronizer::syncing_threads
protected

◆ total_threads

int Realm::Cuda::ContextSynchronizer::total_threads
protected

◆ worker_threads

std::vector<Thread *> Realm::Cuda::ContextSynchronizer::worker_threads
protected

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