gpu: Fix SMP process to GPU mapping
[charm.git] / src / arch / cuda / hybridAPI / hapi_impl.cpp
index 2bcce4825eb674cae99cf22ea861356f8305bddb..d8fe578933568908458ee38882a9b906ca5173d1 100644 (file)
@@ -77,10 +77,10 @@ void initEventQueues() {
 
 // Returns the CUDA device associated with the given PE.
 // TODO: should be updated to exploit the hardware topology instead of round robin
-static inline int getMyCudaDevice(int my_pe) {
+static inline int getMyCudaDevice(int my_node) {
   int device_count;
   hapiCheck(cudaGetDeviceCount(&device_count));
-  return my_pe % device_count;
+  return my_node % device_count;
 }
 
 // A function in ck.C which casts the void* to a CkCallback object and invokes
@@ -204,7 +204,7 @@ void GPUManager::init() {
 #endif
 
   // store CUDA device properties
-  hapiCheck(cudaGetDeviceProperties(&device_prop_, getMyCudaDevice(CmiMyPe())));
+  hapiCheck(cudaGetDeviceProperties(&device_prop_, getMyCudaDevice(CmiMyNode())));
 
 #ifdef HAPI_CUDA_CALLBACK
   // check if CUDA callback is supported