NVIDIA Nsight Systems CUDA 跟踪
NVIDIA Nsight Systems CUDA 跟蹤
CUDA跟蹤
NVIDIA Nsight Systems能夠捕獲有關(guān)在概要過程中執(zhí)行CUDA的信息。
可以在報(bào)告的時(shí)間軸上收集和呈現(xiàn)以下信息:
CUDAAPI跟蹤-跟蹤應(yīng)用程序進(jìn)行的CUDA運(yùn)行時(shí)和CUDA驅(qū)動(dòng)程序調(diào)用。
CUDA運(yùn)行時(shí)調(diào)用通常以CUDA前綴開始(例如,cudaLaunch)。
CUDA驅(qū)動(dòng)程序調(diào)用通常以cu前綴開始(例如,cuDeviceGetCount)。
跟蹤主機(jī)上發(fā)生的操作(例如,對(duì)內(nèi)存的跟蹤)和對(duì)內(nèi)存執(zhí)行的拷貝。在使用CUDAAPI的線程中,時(shí)間軸樹中將顯示其他子行。
在時(shí)間線行樹的底部附近,GPU節(jié)點(diǎn)將出現(xiàn)并包含一個(gè)CUDA節(jié)點(diǎn)。在CUDA節(jié)點(diǎn)中,進(jìn)程中使用的每個(gè)CUDA上下文將與其相應(yīng)的CUDA流一起顯示。steam將包含內(nèi)存操作和GPU上的內(nèi)核啟動(dòng)。內(nèi)核啟動(dòng)用藍(lán)色表示,內(nèi)存?zhèn)鬏斢眉t色顯示。
獲取CUDA信息最簡單的方法是從NVIDIA Nsight Systems啟動(dòng)進(jìn)程,它將為您設(shè)置環(huán)境。為此,只需設(shè)置正常啟動(dòng)并選中Collect CUDA
trace復(fù)選框。
其他配置參數(shù)可用:
收集超過X秒的API調(diào)用的回溯-打開CUDA API回溯的收集,并設(shè)置CUDA API事件在收集其回溯之前必須花費(fèi)的最短時(shí)間。將此值設(shè)置得太低可能會(huì)導(dǎo)致應(yīng)用程序開銷過高,并嚴(yán)重增加結(jié)果文件的大小。
定期刷新數(shù)據(jù)-指定嘗試刷新CUDA跟蹤數(shù)據(jù)的時(shí)間段。通常,為了收集完整的CUDA跟蹤,應(yīng)用程序需要完成用于CUDA工作的設(shè)備(調(diào)用cudaDeviceReset()),然后讓應(yīng)用程序正常退出(而不是崩潰)。
此選項(xiàng)允許在設(shè)備完成之前刷新CUDA跟蹤數(shù)據(jù)。但是,它可能會(huì)給隨機(jī)的CUDA驅(qū)動(dòng)程序或CUDA運(yùn)行時(shí)API調(diào)用帶來額外的開銷。
跳過一些API調(diào)用-避免跟蹤無關(guān)緊要的CUDA運(yùn)行時(shí)API調(diào)用(即,cudaConfigureCall()、cudaSetupArgument()、cudaHostGetDevicePointers())。不跟蹤這些函數(shù)可以顯著減少分析開銷,而不會(huì)丟失任何有趣的數(shù)據(jù)。(見下面的CUDA跟蹤過濾器)
如果需要,可以手動(dòng)設(shè)置目標(biāo)應(yīng)用程序以收集CUDA跟蹤。要獲取有關(guān)CUDA執(zhí)行的信息,應(yīng)滿足以下要求:
如果需要,可以手動(dòng)設(shè)置目標(biāo)應(yīng)用程序以收集CUDA跟蹤。要獲取有關(guān)CUDA執(zhí)行的信息,應(yīng)滿足以下要求:
根據(jù)流程的體系結(jié)構(gòu),應(yīng)使用指定的環(huán)境變量啟動(dòng)已分析的流程:
對(duì)于ARMv7(32位)進(jìn)程:
CUDA_INJECTION32_PATH,它應(yīng)該指向注入庫:
/opt/nvidia/nsight_systems/libToolsInjection32.so
對(duì)于ARMv8(64位)進(jìn)程:CUDA_INJECTION64_PATH,它應(yīng)該指向注入庫:
/opt/nvidia/nsight_systems/libToolsInjection64.
如果應(yīng)用程序由NVIDIA Nsight Systems啟動(dòng),所有必需的環(huán)境變量都將自動(dòng)設(shè)置。 請(qǐng)注意,如果在復(fù)制所有收集的CUDA跟蹤數(shù)據(jù)之前應(yīng)用程序崩潰,則部分或所有數(shù)據(jù)可能會(huì)丟失,并且不會(huì)出現(xiàn)在報(bào)告中。
總結(jié)
以上是生活随笔為你收集整理的NVIDIA Nsight Systems CUDA 跟踪的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TensorRT Analysis Re
- 下一篇: NSight Compute 用户手册(