如果我有一个__constant__
价值
__constant__ float constVal;
非阻塞流上的 MPI 等级可能会也可能不会初始化:
cudaMemcpyToSymbolAsync((void*)&constVal,deviceValue,sizeof(float),0,cudaMemcpyDeviceToDevice,stream);
这是:
- 在内核中同时被多个 MPI 等级访问是否安全?即,排名是否共享相同的实例
val
或 MPI 语义(它们都有一个私有副本)是否仍然有效? - 如果以上是安全的,那么由多个 MPI rank 初始化是否安全?