forked from shiwendai/Faiss
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGpuResources.cpp
53 lines (41 loc) · 1.13 KB
/
GpuResources.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/**
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD+Patents license found in the
* LICENSE file in the root directory of this source tree.
*/
#include "GpuResources.h"
#include "utils/DeviceUtils.h"
namespace faiss { namespace gpu {
GpuResources::~GpuResources() {
}
cublasHandle_t
GpuResources::getBlasHandleCurrentDevice() {
return getBlasHandle(getCurrentDevice());
}
cudaStream_t
GpuResources::getDefaultStreamCurrentDevice() {
return getDefaultStream(getCurrentDevice());
}
std::vector<cudaStream_t>
GpuResources::getAlternateStreamsCurrentDevice() {
return getAlternateStreams(getCurrentDevice());
}
DeviceMemory&
GpuResources::getMemoryManagerCurrentDevice() {
return getMemoryManager(getCurrentDevice());
}
cudaStream_t
GpuResources::getAsyncCopyStreamCurrentDevice() {
return getAsyncCopyStream(getCurrentDevice());
}
void
GpuResources::syncDefaultStream(int device) {
CUDA_VERIFY(cudaStreamSynchronize(getDefaultStream(device)));
}
void
GpuResources::syncDefaultStreamCurrentDevice() {
syncDefaultStream(getCurrentDevice());
}
} } // namespace