0
我有興趣獲得併發cuda內核的內存性能計數器。我試圖使用幾個nvprof選項,如--metrics all
和--print-gpu-trace
。輸出似乎表明內核不再是併發的。每個內核的併發性能指標與單獨運行每個內核的指標幾乎完全相同。我認爲這些併發內核按順序運行。我怎麼能得到併發內核的內存性能指標計數器,例如L2緩存?配置文件併發CUDA內核
我有興趣獲得併發cuda內核的內存性能計數器。我試圖使用幾個nvprof選項,如--metrics all
和--print-gpu-trace
。輸出似乎表明內核不再是併發的。每個內核的併發性能指標與單獨運行每個內核的指標幾乎完全相同。我認爲這些併發內核按順序運行。我怎麼能得到併發內核的內存性能指標計數器,例如L2緩存?配置文件併發CUDA內核
在內核同時執行的同時,不能執行每個內核的分析。但是,您可以嘗試以下解決方法:
--metrics
或--events
,則nvprof將只執行跟蹤運行。在這種情況下,nvprof將同時運行內核,但只會獲得內核時序 - 而不是度量/事件數據。cuptiSetEventCollectionMode(CUPTI_EVENT_COLLECTION_MODE_CONTINUOUS)
API對內核同時運行時所需的指標進行抽樣。但是,這將只允許您在該採樣間隔中獲取聚合度量標準/事件數據 - 這意味着您將無法將此數據關聯到單個內核。 CUPTI附帶一個名爲event_sampling
的代碼示例,演示如何使用此API。
見[這裏](https://devtalk.nvidia.com/default/topic/1015752/visual-profiler/profiling-deadloop-replay-kernel-with-nvprof-on-deep-neural-network/ post/5205577 /#5205577)「*當您嘗試使用nvprof分析度量標準或事件時,應用程序中的所有併發內核都將被序列化*」因此,它目前是對'nvprof'的限制。 –
@RobertCrovella謝謝羅伯特。有什麼辦法可以獲得併發內核的性能指標嗎? – palebluedot
我不知道有什麼辦法。 –