Re: [心得] 使用CUDA Share memory
※ 引述《lgen7604 ()》之銘言:
: 根據hardcover大大提供的情報
: 還有之前做實驗遇到Bug的經驗
: 加上 CUDA Programming Guide 2.3 的說明
: (參考Appendix.B.2.3, B.12, 3.2.2)
: 我覺得 shared memory 的使用應該是這樣
: 根據Appendix.B.2.3及B.12
: 在 dynamic allocate 的時候
: 必須在 excution configuration 指定使用的 shared memory 大小
: 至於已經宣告指定大小的 shared memory
: 在呼叫kernel時可以不必加上指定 shared memory 大小的參數
: 也可以加上指定 shared memory 大小的參數
: 不過必須和宣告的 shared memory 大小一致
: 否則的話可能在程式執行過程中會有問題
: 所以好像不寫比較不容易出錯 = =
: 感謝hardcover大大提供討論與指教
借這個標題問一下
我最近在寫filter
由於想讓filter的size可以動態決定
所以使用share memory的時候
必須allocate [blockDim.x+2*r][block.y+2*r] 來放資料
其中r為filter的size
照上面這樣說的話我就必須在呼叫kernel的時候使用
kernel<<<grid, block, (block.x+2*r)*(block.y+2*r)>>>()
來allocate share memory的空間
這樣的話我的share memory就會是一維的
在讀取資料的時候需要多一些運算去計算位置
有辦法動態宣告出二維的share memory嗎??
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.29.95
→
03/18 21:48, , 1F
03/18 21:48, 1F
→
03/18 21:48, , 2F
03/18 21:48, 2F
→
03/18 21:49, , 3F
03/18 21:49, 3F
推
03/18 21:54, , 4F
03/18 21:54, 4F
→
03/18 22:56, , 5F
03/18 22:56, 5F
→
03/18 22:56, , 6F
03/18 22:56, 6F
→
03/18 22:57, , 7F
03/18 22:57, 7F
推
03/22 14:46, , 8F
03/22 14:46, 8F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):