1
我想首先確認以下內容: 共享內存的基本全局內存事務是32字節,64或128字節,但前提是內存訪問可以合併。先例交易的延遲都是平等的。是對的嗎?第二個問題:如果內存讀取不能合併,每個線程只讀取4個字節(是嗎?)所有線程的內存訪問是否都是順序的?cuda內存合併
我想首先確認以下內容: 共享內存的基本全局內存事務是32字節,64或128字節,但前提是內存訪問可以合併。先例交易的延遲都是平等的。是對的嗎?第二個問題:如果內存讀取不能合併,每個線程只讀取4個字節(是嗎?)所有線程的內存訪問是否都是順序的?cuda內存合併
這取決於您正在處理的架構。然而,費米和開普勒您有:
正如您所見,有幾個變量決定了您的內存訪問需要多少時間。一般的經驗法則是:您的訪問模式越密 - 越好!現在的跨越或錯位並不像過去那樣昂貴,所以不要擔心太多,除非您正在進行一些後期優化。
您可能希望查看一些網絡研討會[這裏](https://developer.nvidia.com/gpu-computing-webinars)。特別是網絡研討會涵蓋了內存高效的操作和[全局內存](http://developer.download.nvidia.com/CUDA/training/cuda_webinars_GlobalMemory.pdf)(和[視頻](http:// developer。 download.nvidia.com/CUDA/training/globalmemoryusage_june2011.mp4))和[共享內存(視頻)](http://developer.download.nvidia.com/CUDA/training/sharedmemoryusage_july2011.mp4)內存交易發生在一個大小32或128字節的粒度。 – 2013-02-10 00:50:45