#include <GlobalGPUMgr.h>
Definition at line 58 of file GlobalGPUMgr.h.
◆ GlobalGPUMgr()
GlobalGPUMgr::GlobalGPUMgr |
( |
void |
| ) |
|
Definition at line 47 of file GlobalGPUMgr.C.
References NAMD_bug().
49 if (CkpvAccess(GlobalGPUMgr_instance) == NULL) {
50 CkpvAccess(GlobalGPUMgr_instance) =
this;
52 NAMD_bug(
"GlobalGPUMgr instanced twice on same processor!");
void NAMD_bug(const char *err_msg)
◆ ~GlobalGPUMgr()
GlobalGPUMgr::~GlobalGPUMgr |
( |
void |
| ) |
|
◆ finalize()
void GlobalGPUMgr::finalize |
( |
| ) |
|
◆ getDeviceIndex()
int GlobalGPUMgr::getDeviceIndex |
( |
| ) |
|
|
inline |
◆ getDeviceIndexToPeMap()
const std::vector<int>& GlobalGPUMgr::getDeviceIndexToPeMap |
( |
| ) |
const |
|
inline |
◆ getIsMasterDevice()
bool GlobalGPUMgr::getIsMasterDevice |
( |
| ) |
|
|
inline |
◆ getIsMasterPe()
int GlobalGPUMgr::getIsMasterPe |
( |
| ) |
|
|
inline |
◆ getIsPmeDevice()
bool GlobalGPUMgr::getIsPmeDevice |
( |
| ) |
|
◆ getMasterPeForDeviceIndex()
int GlobalGPUMgr::getMasterPeForDeviceIndex |
( |
int |
device | ) |
|
|
inline |
Definition at line 111 of file GlobalGPUMgr.h.
111 {
return deviceIndexToPeMap[device]; }
◆ getNumDevices()
int GlobalGPUMgr::getNumDevices |
( |
| ) |
|
|
inline |
◆ initialize()
void GlobalGPUMgr::initialize |
( |
void |
| ) |
|
Definition at line 58 of file GlobalGPUMgr.C.
References all, SynchronousCollectives::allGather(), deviceCUDA, SynchronousCollectives::forceBarrierAll(), DeviceCUDA::getDeviceID(), DeviceCUDA::getIsMasterDevice(), DeviceCUDA::getMasterPe(), and SynchronousCollectives::Object().
Referenced by initializeGPUResident().
64 peToDeviceIDMap.resize(CkNumPes(), -1);
65 peToDeviceIndexMap.resize(CkNumPes(), -1);
73 for (
int i = 0; i < CkNumPes(); i++) {
74 if (peToDeviceIDMap[i] != -1) {
79 deviceIndexToPeMap.resize(numDevices, 0);
82 int current_device = 0;
83 for (
int i = 0; i < CkNumPes(); i++) {
84 if (peToDeviceIDMap[i] != -1) {
85 deviceIndexToPeMap[current_device] = i;
86 peToDeviceIndexMap[i] = current_device;
91 deviceIndex = peToDeviceIndexMap[CkMyPe()];
std::vector< T > allGather(const T &data, const SynchronousCollectiveScope scope)
__thread DeviceCUDA * deviceCUDA
static SynchronousCollectives * Object()
◆ initializeBackends()
void GlobalGPUMgr::initializeBackends |
( |
| ) |
|
◆ Object()
◆ ObjectOnPe()
static GlobalGPUMgr* GlobalGPUMgr::ObjectOnPe |
( |
const int |
pe | ) |
|
|
inlinestatic |
Definition at line 62 of file GlobalGPUMgr.h.
63 return CkpvAccessOther(GlobalGPUMgr_instance, CmiRankOf(pe));
◆ printDeviceMaps()
void GlobalGPUMgr::printDeviceMaps |
( |
| ) |
|
The documentation for this class was generated from the following files: