我有一个 MPI 程序,它将调用一个 CUDA 函数。我用 MPI 定时器和 CUDA 定时器来测量 CUDA 函数的运行时间。但是,使用 MPI 定时器的测量值比使用 CUDA 定时器的测量时间多 2 秒。我想知道为什么会发生这种情况。
MPI 计划的结构如下:
int main(){
MPI initiation
Start timing with MPI_Wtime
Call CUDA function
End timing with MPI_Wtime
MPI finalization
}
CUDA 函数的结构如下:
void CUDA_fun(){
Start CUDA timer event
Call global function
End CUDA timer event
}
Linux x86_64
显卡 C2075
CUDA 4.2
MPICH2 1.4.1p1