[問題] 請問各位利用CUDA把FORTRAN CODE加速的一些問題

看板Fortran作者 (a4g5i6)時間13年前 (2011/07/03 04:43), 編輯推噓8(8016)
留言24則, 7人參與, 最新討論串1/1
不好意思,我想請問一下各位有使用過GPU平行化的程式(CUDA), 利用此功能能讓我們的code加快多少倍 能請各位給我您所使用的 GPU型號(例如Tesla C1060,C2050.C2070.....) code是計算什麼的(例如積分.解矩陣或積分.....) 用幾個核心來跑code 來做參考(如果有一些小細節會些微影響跑的時間,那些可以不用理會) 在我的想法中,理論上用多少核心跑,我們所要平行化的部分就會加快多少, 但也要考慮電腦可能會delay,所以會延遲一下,因此我才想問實際是跑多快 我會問這個的原因是因為我是一個研究生, 我們實驗室目前是用openmp加速,也就是利用CPU來加速,但CPU的核心數不會比GPU來的多, 假如用4個CPU跑積分最多才加速2~3.4倍,並不會完全增加4倍,我們實驗室想買GPU, 現在還在評估階段,但怕GPU的加快速度比CPU還來的差,目前沒有機台可供我們測試, 因此來此板問各位用過GPU的大大,能讓我回報我們教授,感謝各位的幫助 P.S.假如各位有其他想法可以回復告知我,謝謝!!(我們實驗室用的程式是FORTRAN) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.128.39

07/03 16:33, , 1F
一切看演算法可供平行化的部份多不多,若真要研究請先
07/03 16:33, 1F

07/03 16:34, , 2F
把既有的演算法搞懂才能知道GPU加速程度,另也可前往
07/03 16:34, 2F

07/03 16:35, , 3F
c++版 /openmp,有很多資訊可供參考
07/03 16:35, 3F

07/03 17:56, , 4F
CUDA不是這樣設計的 跟一般多核心平行化會有些不太一樣
07/03 17:56, 4F

07/03 17:58, , 5F
如果照本宣科把CPU平行化的演算法套到GPU上 不一定會較快
07/03 17:58, 5F

07/03 17:59, , 6F
簡單說就是很可能要重新設計演算法 很難這樣簡單地去比較
07/03 17:59, 6F

07/03 18:33, , 7F
看到有人推文,我才發現打錯關鍵字 /cuda
07/03 18:33, 7F

07/03 19:15, , 8F
補充一下 GPU程式寫得好真的會很快XDDDD 只有一個爽字!!!
07/03 19:15, 8F

07/03 19:48, , 9F
n個CPU不可能跑出n倍速度 資料傳遞也是要時間的
07/03 19:48, 9F

07/03 22:47, , 10F
cpu好像有個共用記憶體的架構,不過不熟…
07/03 22:47, 10F

07/04 09:16, , 11F
請問callmei或Semisphere大大,如果有mpi開發經驗
07/04 09:16, 11F

07/04 09:17, , 12F
是不是比較容易入門CUDA?
07/04 09:17, 12F

07/04 19:57, , 13F
快4~6倍
07/04 19:57, 13F

07/04 23:24, , 14F
不曉得耶~我覺得CUDA的grid/block/thread蠻像電腦叢集的
07/04 23:24, 14F

07/04 23:25, , 15F
所以我想有用MPI開發過電腦叢集程式 應該是有幫助的
07/04 23:25, 15F

07/04 23:26, , 16F
只是一個是計算時脈低 平行單元多 資料傳輸快
07/04 23:26, 16F

07/04 23:26, , 17F
一個是計算時脈高 平行單元少 資料傳輸慢
07/04 23:26, 17F

07/04 23:27, , 18F
所以開發程式時該顧慮的點會不太一樣 而且CPU快取也較大
07/04 23:27, 18F

07/04 23:29, , 19F
而且我不是大大 我現在還在練習把小程式改成CUDA的階段
07/04 23:29, 19F

07/04 23:30, , 20F
蠻希望有高手出來教學一下的 自己找資料摸索真的太累了..
07/04 23:30, 20F

07/06 09:39, , 21F
亂入一問:記憶體部分若要用到超過20G怎麼辦
07/06 09:39, 21F

07/06 09:40, , 22F
使用外部ram嗎?還是只能用GDDR?
07/06 09:40, 22F

07/11 04:21, , 23F
可能得做多次的數據交換和分批計算吧??或是用很多張顯卡??
07/11 04:21, 23F

07/11 04:22, , 24F
不過我不知道CUDA架構下 顯卡串聯 記憶體有沒有共享就是了
07/11 04:22, 24F
文章代碼(AID): #1E3uBp3P (Fortran)
文章代碼(AID): #1E3uBp3P (Fortran)