請問 CUDA 每個 block 可使用多少 shar … - 顯卡
By Skylar Davis
at 2010-06-03T08:47
at 2010-06-03T08:47
Table of Contents
※ 引述《HsiaoCC (Learning To Live)》之銘言:
: ※ 引述《jk21234 ( 1569 11 /47)》之銘言:
: : 所以,SM和Block在"某個時段內,獨佔的1:1執行"
: : 如果你覺得不容易理解,它還蠻接近一顆cpu執行多工的方式.
: : 切換也應該是context switch.有同樣的缺點就是切換再怎麼頻繁,
: : 對幾百MHZ的晶片來說,都是巨大的效能損失.....
: : (如果我沒記錯,cuda文件有描述context switch部分...)
: : 所以也不用擔心你在程式中使用不到16KB的shared memory.
: 來閒扯一下他背後的運作,就 GT200 系列來說
: 每個 SM 在 resource 允許的情況下,最多能同時保持 1,024 個 computing threads
: 且每次 SM 最多只允許抓取 8 個 blocks,且不能超過 resource limitation
恕刪~
: 回到正題,shared memory 如果需求的量超過,是沒辦法被執行的,只能等到在 SM 中
: 的工作都做完,resource release 了才行~~~
我把我瞭解到的說一下,請各位看看對不對
GT200系列 每個 SM 有 16K 個 register 與 16KB shared memory
SM 能同時能保持 8 個 block,總計 1024 個 computing threads
這四者都是 resource limitation
假如今天我寫一個 kernel 用了 16KB shared memory
總共產生有 1024 block,每個 block 128 thread
那麼 SM 就只能抓取 1 個 block 來執行 (因為 shared memory 到達上限)
(雖然 thread 總數...等還沒有到達上限)
而這個 CUDA 程式很可能使 SM 有很多 stall
因為 128 thread 可能不足以 hide latency
--
: ※ 引述《jk21234 ( 1569 11 /47)》之銘言:
: : 所以,SM和Block在"某個時段內,獨佔的1:1執行"
: : 如果你覺得不容易理解,它還蠻接近一顆cpu執行多工的方式.
: : 切換也應該是context switch.有同樣的缺點就是切換再怎麼頻繁,
: : 對幾百MHZ的晶片來說,都是巨大的效能損失.....
: : (如果我沒記錯,cuda文件有描述context switch部分...)
: : 所以也不用擔心你在程式中使用不到16KB的shared memory.
: 來閒扯一下他背後的運作,就 GT200 系列來說
: 每個 SM 在 resource 允許的情況下,最多能同時保持 1,024 個 computing threads
: 且每次 SM 最多只允許抓取 8 個 blocks,且不能超過 resource limitation
恕刪~
: 回到正題,shared memory 如果需求的量超過,是沒辦法被執行的,只能等到在 SM 中
: 的工作都做完,resource release 了才行~~~
我把我瞭解到的說一下,請各位看看對不對
GT200系列 每個 SM 有 16K 個 register 與 16KB shared memory
SM 能同時能保持 8 個 block,總計 1024 個 computing threads
這四者都是 resource limitation
假如今天我寫一個 kernel 用了 16KB shared memory
總共產生有 1024 block,每個 block 128 thread
那麼 SM 就只能抓取 1 個 block 來執行 (因為 shared memory 到達上限)
(雖然 thread 總數...等還沒有到達上限)
而這個 CUDA 程式很可能使 SM 有很多 stall
因為 128 thread 可能不足以 hide latency
--
Tags:
顯卡
All Comments
By Ida
at 2010-06-03T17:07
at 2010-06-03T17:07
By Tracy
at 2010-06-03T23:05
at 2010-06-03T23:05
By Bennie
at 2010-06-07T09:26
at 2010-06-07T09:26
By Jacky
at 2010-06-07T21:33
at 2010-06-07T21:33
By Skylar DavisLinda
at 2010-06-09T02:26
at 2010-06-09T02:26
Related Posts
如何換回舊驅動?
By Harry
at 2010-06-03T02:01
at 2010-06-03T02:01
請問 CUDA 每個 block 可使用多少 shar …
By Hazel
at 2010-06-03T01:10
at 2010-06-03T01:10
請問 CUDA 每個 block 可使用多少 shar …
By Sierra Rose
at 2010-06-03T00:49
at 2010-06-03T00:49
請問顯卡該買哪一張?
By Lydia
at 2010-06-03T00:20
at 2010-06-03T00:20
請問 CUDA 每個 block 可使用多少 shar …
By Skylar DavisLinda
at 2010-06-03T00:04
at 2010-06-03T00:04