GPU中與CUDA相關的幾個概念

2021-07-23 22:41:42 字數 1110 閱讀 6200

今天說說gpu的硬體結構中與cuda相關的幾個概念:thread    block  grid   warp  sp  sm

sp: 最基本的處理單元,streaming processor 最後具體的指令和任務都是在sp上處理的。gpu進行平行計算,也就是很多個sp同時做處理

sm:多個sp加上其他的一些資源組成乙個sm, streaming multiprocessor. 其他資源也就是儲存資源,共享記憶體,寄儲器等。

warp:gpu執行程式時的排程單位,目前cuda的warp的大小為32,同在乙個warp的執行緒,以不同資料資源執行相同的指令。

thread-->block-->grid:在利用cuda進行程式設計時,乙個grid分為多個block,而乙個block分為多個thread。其中任務劃分到是否影響最後的執行效果。劃分的依據是任務特性和gpu本身的硬體特性。

下面幾張硬體結構簡圖 便於理解(**於網上)

以上兩圖可以清晰地表示出sm與sp的關係。

此圖反應了warp作為排程單位的作用,每次gpu排程乙個warp裡的32個執行緒執行同一條指令,其中各

個執行緒對應的資料資源不同。

此圖是乙個warp排程的例子。

乙個sm只會執行乙個block裡的warp,當該block裡warp執行完才會執行其他block裡的warp。

進行劃分時,最好保證每個block裡的warp比較合理,那樣可以乙個sm可以交替執行裡面的warp,從而提高

效率,此外,在分配block時,要根據gpu的sm個數,分配出合理的block數,讓gpu的sm都利用起來,提

利用率。分配時,也要考慮到同乙個執行緒block的資源問題,不要出現對應的資源不夠。

GPU中與CUDA相關的幾個概念

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!今天說說gpu的硬體結構中與cuda相關的幾個概念 thread block grid warp sp sm sp 最基本的處理單元,streaming processor 最後具體的指令和任務都是在sp上處理的。gpu進行平行計算,也就是很多個s...

gpu的單位表示 GPU中的幾個基本概念

物理概念 streaming processor sp 最基本的處理單元。gpu進行平行計算,也就是很多個sp同時做處理。現在sp的術語已經有點弱化了,而是直接使用thread來代替。乙個sp對應乙個thread warp warp是sm排程和執行的基礎概念,通常乙個sm中的sp thread 會分...

中block的概念 GPU中的幾個基本概念

streaming processor sp 最基本的處理單元。gpu進行平行計算,也就是很多個sp同時做處理。現在sp的術語已經有點弱化了,而是直接使用thread來代替。乙個sp對應乙個thread warp warp是sm排程和執行的基礎概念,通常乙個sm中的sp thread 會分成幾個wa...