[問題] CUDA 程式
不知道有沒有高手可以解答以下問題?
資料形式: 600列800行的隨機數
目的: 把每一行的數據加起來
初始化:
sum[600]={0.0}
data[600x800]= 上述資料
CUDA程式1: 成功
// dim3 gridsize(1, 1, 1);
// dim3 blocksize(600, 1, 1);
for (int j = 0; j < 800; j+= 1){
sum[(blockDim.x*bdx + tdx)] = sum[(blockDim.x*bdx + tdx)]
+ data[600*j + (blockDim.x*bdx +tdx)];
}
CUDA程式2: 失敗
// dim3 gridsize(40, 1, 1);
// dim3 blocksize(600, 1, 1);
for (int j = 0; j < 800; j+= 40){
sum[0*(j + bdx) +tdx] = sum[0*(j + bdx) +tdx]
+ data[600*(j + bdx) +tdx];
}
請問程式2失敗的原因是?可以怎麼寫呢?
我自己猜測是: 例如, sum[1]無法同時處理40筆資料
請教大家, 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.72.113.11 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1684424338.A.607.html
→
05/18 23:41,
1年前
, 1F
05/18 23:41, 1F
→
05/18 23:44,
1年前
, 2F
05/18 23:44, 2F
→
05/18 23:48,
1年前
, 3F
05/18 23:48, 3F
推
05/19 00:07,
1年前
, 4F
05/19 00:07, 4F
推
05/19 00:10,
1年前
, 5F
05/19 00:10, 5F
→
05/19 00:14,
1年前
, 6F
05/19 00:14, 6F
→
05/19 00:21,
1年前
, 7F
05/19 00:21, 7F
→
05/19 00:22,
1年前
, 8F
05/19 00:22, 8F
推
05/19 00:43,
1年前
, 9F
05/19 00:43, 9F
推
05/19 00:46,
1年前
, 10F
05/19 00:46, 10F
→
05/19 00:46,
1年前
, 11F
05/19 00:46, 11F
推
05/19 02:33,
1年前
, 12F
05/19 02:33, 12F
推
05/19 19:13,
1年前
, 13F
05/19 19:13, 13F
→
05/23 22:05,
1年前
, 14F
05/23 22:05, 14F
→
05/23 22:07,
1年前
, 15F
05/23 22:07, 15F
→
05/23 22:09,
1年前
, 16F
05/23 22:09, 16F
推
05/25 04:58,
1年前
, 17F
05/25 04:58, 17F
→
05/25 04:58,
1年前
, 18F
05/25 04:58, 18F
→
05/25 04:59,
1年前
, 19F
05/25 04:59, 19F
→
05/25 13:38,
1年前
, 20F
05/25 13:38, 20F
→
05/26 23:10,
1年前
, 21F
05/26 23:10, 21F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章