請問 CUDA 每個 block 可使用多少 shar … - 顯卡

By Sierra Rose
at 2010-06-03T00:49
at 2010-06-03T00:49
Table of Contents
※ 引述《mself (mself)》之銘言:
: ※ 引述《jk21234 ( 1569 11 /47)》之銘言:
: : SM跟Block一對一 一個是硬體性質一個是軟體定義
: : 所以每個SM/Block能用的Shared memory都一樣是16KB.
: : 放1024個block在比如說16個SM的晶片會怎樣?輪流進去執行啊.....
: : 類似你在單一一顆cpu上多工,要context switch.
: 就我瞭解,SM 跟 block 有對應,但好像不是 1 對 1,
: 數個 block 會一起在一個 SM 上輪流執行,
所以,SM和Block在"某個時段內,獨佔的1:1執行"
如果你覺得不容易理解,它還蠻接近一顆cpu執行多工的方式.
切換也應該是context switch.有同樣的缺點就是切換再怎麼頻繁,
對幾百MHZ的晶片來說,都是巨大的效能損失.....
(如果我沒記錯,cuda文件有描述context switch部分...)
所以也不用擔心你在程式中使用不到16KB的shared memory.
: 視 register 用量,以及 thread 數上限而定
: 假設現在是 8 個 block 在 1 個 SM 上輪流執行
: 是不是每個 block 只能有 2 KB shared memory 呢?
: 還是說每個 block 都能用滿 16 KB,但不是正在執行的 block
: 的 shared memory (context) 會 switch 到 global memory
: 要執行時在 switch 回來呢?
--
: ※ 引述《jk21234 ( 1569 11 /47)》之銘言:
: : SM跟Block一對一 一個是硬體性質一個是軟體定義
: : 所以每個SM/Block能用的Shared memory都一樣是16KB.
: : 放1024個block在比如說16個SM的晶片會怎樣?輪流進去執行啊.....
: : 類似你在單一一顆cpu上多工,要context switch.
: 就我瞭解,SM 跟 block 有對應,但好像不是 1 對 1,
: 數個 block 會一起在一個 SM 上輪流執行,
所以,SM和Block在"某個時段內,獨佔的1:1執行"
如果你覺得不容易理解,它還蠻接近一顆cpu執行多工的方式.
切換也應該是context switch.有同樣的缺點就是切換再怎麼頻繁,
對幾百MHZ的晶片來說,都是巨大的效能損失.....
(如果我沒記錯,cuda文件有描述context switch部分...)
所以也不用擔心你在程式中使用不到16KB的shared memory.
: 視 register 用量,以及 thread 數上限而定
: 假設現在是 8 個 block 在 1 個 SM 上輪流執行
: 是不是每個 block 只能有 2 KB shared memory 呢?
: 還是說每個 block 都能用滿 16 KB,但不是正在執行的 block
: 的 shared memory (context) 會 switch 到 global memory
: 要執行時在 switch 回來呢?
--
Tags:
顯卡
All Comments
Related Posts
請問 CUDA 每個 block 可使用多少 shar …

By Skylar DavisLinda
at 2010-06-03T00:04
at 2010-06-03T00:04
清理風扇

By George
at 2010-06-02T23:35
at 2010-06-02T23:35
買顯示卡可以買過保的嗎..

By Zora
at 2010-06-02T23:32
at 2010-06-02T23:32
M4A785TD-V EVO在Win7 64bit上播放1080P?

By Kelly
at 2010-06-02T23:14
at 2010-06-02T23:14
M4A785TD-V EVO在Win7 64bit上播放1080P?

By Jacob
at 2010-06-02T22:44
at 2010-06-02T22:44