2013-03-13 223 views
0

您好我正在使用CAPS OpenACC編譯器,但當我嘗試獲得一些初步配置文件結果時會發生一些事情。openAcc如何配置文件

首先,我運行了聲明HMPPRT_LOG_LEVEL =「info」的代碼,它會生成一些帶時間戳的配置文件結果。

[  2.612337] (0) INFO : Upload edgelengths[0:129600] (element_size=8, queue=none, location=gravity_openacc.c:50) 
[  2.613485] (0) INFO : Call  __hmpp_acc_region__2ha750yb (queue=none, location=gravity_openacc.c:50) 
[  2.614367] (0) INFO : Free  edgelengths[0:129600] (element_size=8, queue=none, location=gravity_openacc.c:50) 

所以我猜內核執行時間計算爲2.614367-2.613485 = 0.000882秒。

但是,當我宣佈CUDA_PROFILE = 1,下面的曲線示

method=[ __hmpp_acc_region__2ha750yb_parallel_region_1 ] gputime=[ 492.480 ] cputime=[ 13.000 ] occupancy=[ 0.250 ] 

所以我很困惑這兩個結果,這是真的???

任何人都可以得到一些解決方案?

謝謝!

回答

0

CUDA事件探查器只顯示執行CUDA內核所花費的時間,而用HMPPRT_LOG_LEVEL =「info」獲得的日誌給出了執行該區域所需的總時間,這與完全不同,因爲你可能有一些在主機上執行的代碼。