cuda事件函数的头文件

Sho*_*dul 0 cuda visual-c++

下面的代码片段包含哪个头文件来使用cuda事件mathods来测量时间?

cudaEvent_t start,stop;
cudaEventCreate(&start);
cudaEventCreate(&stop);
float Elapsed=0,Cycle;

for (int p=1; p<=MSG_NUM; p++)
{ 
    cudaEventRecord(start,0);

    add<<<R, (M+R), (M+R)* sizeof(int)>>>( d_msg, d_checkSumArray ); 

    cudaEventRecord(stop,0);
    cudaEventSynchronize(stop);
    cudaElapsedTime(&Cycle,start,stop);
    Elapsed += Cycle;
}

printf("Time = %f",Elapsed);
Run Code Online (Sandbox Code Playgroud)

我的程序显示以下错误,因为没有包含头文件.

错误:标识符"cudaElapsedTime"未定义

有人可以给出解决方案吗?

Rob*_*lla 5

正确的API调用是cudaEventElapsedTime(...).

除此之外,您的参数看起来正确.

如果使用nvcc进行编译,则不需要任何特殊的包含标头.