NVIDIA 宣佈開放 CUDA 原始碼 - 3C

Table of Contents

※ 引述《jackblack (Hsien)》之銘言:
: 不知道是不是由於 AMD 最近在 OpenCL 的開源方面動作帶來的壓力,NVIDIA 宣佈開放旗
: 下的通用 GPU 運算 CUDA 編譯器原始碼。
: 在 GTC Asia 上 NVIDIA 宣佈將其通用圖形處理器運算技術的 CUDA 的編譯器開源(尚未
: 明確表示將採何種開源協定),從而允許軟體廠商將 CUDA 程式移植到其他非 NVIDIA 設
: 備上。業界推測此舉可能是由於很多軟體廠商受到來自客戶方面的壓力,要求將遷移到更
: 加開放的高性能運算平臺比如 OpenCL 上。
: 此外 NVIDIA 還宣佈將和大學建立 CUDA 教育中心,在學生中傳播平行運算的技術。
: 來源:
: http://goo.gl/V9u8e
: http://linuxtoy.org/archives/nvidia-open-sourced-cuda.html


[當日沒有查證原始消息 重寫]

其實CUDA的compiler兩年前就Open Source一半了.大概是這樣
CUDA-->WHIRL-->CGIR-->ptx

兩年前12月Open Source的是後半段(編譯器相關領域中 稱為backend的部分)
CGIR-->ptx的部分,至於CUDA-->WHIRL這邊並沒有Open Source,而且它也不是
用整套Open64做出來,是另外一家商業公司(忘了誰....)完成的.

但是沒關係,早期的CUDA compiler為了debug方便,
下個參數就會把WHIRL印出來給你.所以就算沒有Open Source,
會維護Open64的人都有辦法自己做CUDA to WHIRL,或者是抄一下變成
OpenCL to WHIRL之類的

題外話不說,CGIR-->ptx把它Open Source,有甚麼好處?就是可以吸取一些
免費的人力來幫他的性能更為加強...但我看放了這麼久,好像沒有人在幫忙改.
如果說幫忙移植後端在其他硬體上的話,也是兩年前就可以做得到的事情但沒有人改.

[正文開始]

但現在不同,新聞中要Open Source的CUDA,不像是以前基於Open64,而是基於
LLVM,相對於影響力還很小的Open Source(要寫信去申請才有而非
GPL/BSD),重點是nVidia把CUDA轉移到LLVM上這件事情,有甚麼好處呢?

LLVM是Apple主推的編譯器,所以目前的MacOC,未來的iOS,未來的Android
以及其他手持裝置,基本上只有LLVM的份沒有Open64的份,所以CUDA轉用
LLVM的主要目標是打入這些市場,也等於是繼續全面向OpenCL開戰

簡單說,以後會在更多有OpenCL的平台,看到CUDA參一腳.
至於CUDA原有的高性能計算平台會不會換,OpenCL有沒有辦法
進入...我認為短期內還不會.

對一般的程式開發者有沒有甚麼差別呢....?看來差異是很小,
你會CUDA與法你就會OpenCL語法,反之也一樣.我建議順便研究
OpenMP和OpenAAC這兩套也是相似的語法.



順便推銷一下,12/21日於交大有OpenCL的研討會,主講者
AMD - 朱子青 博士(也是Itanium Compiler的主要發展者之一),
有興趣者可以在12/19日前到
http://esw.cs.nthu.edu.tw/
報名

--

All Comments

Daniel avatarDaniel2011-12-19
jk神必推
Cara avatarCara2011-12-21
意思是說ati支援cuda還有得等?
Rachel avatarRachel2011-12-21
快推以免別人誤會我們看不懂!
Quanna avatarQuanna2011-12-23
清大還交大? 怎麼好像跟我看到的訊息不一樣?...XD
Ida avatarIda2011-12-24
寫驅動跑光 開放給大家亂寫?
Hardy avatarHardy2011-12-26
現在NV在推MAXIMUS 不知JK有什麼看法 ??
Adele avatarAdele2011-12-26
所以之後有可能會在手持式平台上使用CUDA嗎?
Margaret avatarMargaret2011-12-26
專業好文 推
Agnes avatarAgnes2011-12-31
看不懂但還是要推
Freda avatarFreda2012-01-02
慘了看不懂 推就對了
Jacky avatarJacky2012-01-06
看來下禮拜3還是要去聽CL的課程了XD
Jacky avatarJacky2012-01-08
那我會站起來提問,AMD FFT比人家CUDA慢20倍 要怎麼辦
Wallis avatarWallis2012-01-11
那我會給你拍手~~
Quanna avatarQuanna2012-01-12
那不就知道jk大的真面目了(誤)
Poppy avatarPoppy2012-01-15
要趕快推,免得別人說我們看不懂
Vanessa avatarVanessa2012-01-18
一般應用大多是求快速開發出來先吧, 極致效能就再說 XD
Olivia avatarOlivia2012-01-20
那directcompute除了開發遊戲外還有人在玩嗎?
Selena avatarSelena2012-01-24
看起來NVidia已經沒招了 還是乖乖做OpenCL就好吧
Joe avatarJoe2012-01-27
就我個人經驗 後期Fermi架構的顯卡 OpenCL Performance
Harry avatarHarry2012-01-30
都和CUDA很接近了 再說為什麼要同時支援二套呢?
Freda avatarFreda2012-02-01
快推不然人家以為我看不懂
Mason avatarMason2012-02-01
我不知道是否真的有差到20% 但是連CUDA4.1都是用LLVM嚕~
Rachel avatarRachel2012-02-03
j大剛剛有來嗎
Mary avatarMary2012-02-04
我有去 就提問我預告一樣的問題啊