2012-11-21 26 views
0

下面的代碼片段將使用哪個頭文件來測量使用cuda事件方法的時間?cuda事件函數的頭文件

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); 

由於沒有包含頭文件,我的程序顯示如下錯誤。

錯誤:標識符 「cudaElapsedTime」 未定義

有人能給予解決嗎?

回答

5

正確的API調用是cudaEventElapsedTime(...)

除此之外,您的參數看起來是正確的。

如果您使用nvcc進行編譯,則不需要任何特殊的包含標頭。

+0

非常感謝你Robert Crovella ... – Shohidul