cuda_stream_manager.cpp 448 Bytes
Newer Older
Rick Ho's avatar
Rick Ho committed
1
#include <cuda_runtime.h>
Rick Ho's avatar
Rick Ho committed
2
3
4
5
6
7
8
9
10
11
12

#include "cuda_stream_manager.h"

CudaStreamManager* smgr = NULL;

CudaStreamManager* getCudaStreamManager(const size_t num_expert) { 
    if (!smgr) {
        smgr = new CudaStreamManager(num_expert);        
    }
    return smgr;
}
Rick Ho's avatar
Rick Ho committed
13

14
15
16
17
18
void CudaStreamManager::sync(int i) {
	if (i > -1) {
		cudaStreamSynchronize(streams[i]);
		return;
	}
Rick Ho's avatar
Rick Ho committed
19
20
21
22
	for (size_t i=0; i<MAX_STREAMS; ++i) {
		cudaStreamSynchronize(streams[i]);
	}
}