看板 NTUEE_LAB206 關於我們 聯絡資訊
※ 引述《neumann (€ΝΕμΜΑΝΝ€)》之銘言: : GPUmat: GPU toolbox for MATLAB : http://gp-you.org/ : 我們的是這塊 : http://www.nvidia.com.tw/object/product_tesla_C2050_C2070_tw.html 剛剛看了一下GPUmat的manual 把我看到的東西summarize一下: 1.安裝好VC++2008、CUDA lib以及CPUmat toolkit之後,就可在MATLAB裡直接 使用GPU來協助運算。 2.GPUmat可作高、低階的程式撰寫。 高階: 就像平常用的MATLAB一樣,只是變數得宣告成GPU接受的型別。 低階: 可直接用CUDA lib提供的函式做運算,或是控制GPU硬體(ex.memory)。 3.基本上,不管是在CPU、還是在GPU上跑的MATLAB func.,使用的函式名稱or運算子 看起來都一樣。唯一的差別的就在data type,它會決定該變數、函式執行的位置在CPU 或GPU。兩種變數不能混在同一個函式使用。 4.有函式可作CPU/GPU資料型別的轉換,但是manual上說耗時且降低performance。 感覺就是一台電腦裡面有兩個CPU在處理程式。 不過像MATLAB這種直譯式的編譯器, 它會一開始就把分屬CPU跟GPU的程式碼分開並同時編譯+執行嗎? 我覺得要做到這樣才算平行處理吧 如果可以的話,那CPU跟GPU的程式有依存性要怎麼辦? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.218.122 ※ 編輯: assyrian 來自: 140.112.218.122 (08/12 22:48)
tonyatta:應該還是sequential的 只是原本要cpu幾個Thead循序 08/12 23:06
tonyatta:變成那幾行可以給GPU 超多processor一起跑 少loop幾次吧 08/12 23:07
tonyatta:依存性的問題不是compiler要解的 開發者得動腦筋 08/12 23:08
tonyatta:怎麼樣少做轉換 會是很重要的事情 最好都跑GPU or CPU 08/12 23:21
tonyatta:現在的問題在於 如果只是資料型別不同,function用的是 08/12 23:23
tonyatta:多重定義的function overloading,那他有哪些func能用 08/12 23:23
tonyatta:畢竟從頭寫起會很複雜. library有多少會很重要.. 08/12 23:24
assyrian:manual裡有把能用的function列出來 08/13 09:38
tonyatta:有我把他看完 意思就是 比較深入的數學方法要自己寫 08/13 22:44