[問題] CUDA 大矩陣相乘
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
GCC (nvcc) Linux
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
CUDA
問題(Question):
我寫了一個簡單的 kernel function 想要做大矩陣的陳法
維度在4000多的時候都正常
但是在維度接近5000時,每個矩陣的元素輸出結果都變成0
想請問版上的先進們為什麼會這樣?
不知道這個問題和 register 被用完有沒有關係
餵入的資料(Input):
A.mat 和 B.mat
A 是流水號的矩陣 e.g : 1 2 3
4 5 6
7 8 9 (維度是三)
B 是identity e.g: 1 0 0
0 1 0
0 0 1
預期的正確結果(Expected Output):
AxB 應該要和 A 一樣
錯誤結果(Wrong Output):
當矩陣維度接近5000時
AxB就變成零矩陣了
程式碼(Code):(請善用置底文網頁, 記得排版)
kernel function : http://paste.plurk.com/show/407891/
sourse code : http://paste.plurk.com/show/407905/
造 A.mat 和 B.mat 的程式碼 : http://paste.plurk.com/show/407908/
補充說明(Supplement):
因為才剛開始寫,也還在測試階段
所以blockDim 還有 gridDim都沒有調整,直接設成最大值
GPU 是GTS 450,
MAX_thread: 1024
MAX_block: 1024
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.234.211
※ 編輯: fuqule 來自: 114.32.234.211 (03/27 13:08)
→
03/27 14:45, , 1F
03/27 14:45, 1F
→
03/27 14:46, , 2F
03/27 14:46, 2F
→
03/27 14:51, , 3F
03/27 14:51, 3F
→
03/27 15:18, , 4F
03/27 15:18, 4F
→
03/27 15:19, , 5F
03/27 15:19, 5F
→
03/27 15:22, , 6F
03/27 15:22, 6F
→
03/27 20:12, , 7F
03/27 20:12, 7F
→
03/27 20:12, , 8F
03/27 20:12, 8F
→
03/27 20:26, , 9F
03/27 20:26, 9F
→
03/27 20:27, , 10F
03/27 20:27, 10F
→
03/27 20:33, , 11F
03/27 20:33, 11F
→
03/27 20:58, , 12F
03/27 20:58, 12F
→
03/27 21:28, , 13F
03/27 21:28, 13F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):
0
13
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章
2
12