瀏覽單個文章
jiahan
Regular Member
 

加入日期: Mar 2009
文章: 71
引用:
作者明彥
很多東西開源後 尤其是大公司丟出來的
感覺就是把玩爛的玩具還裝的很有愛心的樣子捐助給社福團體
並且高喊大家要有良心有憐憫心一起攜手向前 心中有善念 處處是樂園之類的...



意思是說結果編譯程式還是要等NVIDIA 像修正檔一樣
更新後才會有新功能或對新的GPU CUDA SP 支援之類的嗎??


意思是指,在OpenCL要產生一個kernel,只要把source code當參數透過API來呼叫一個動作就完成了....所以對其它的語言來說他只是去呼叫相對應的C function,不用任何的effort....

而CUDA必須要額外呼叫像是nvcc的編譯程式,將CUDA的kernel來編譯出一個ptx檔,然後還要呼叫額外的driver API讓host端載入編譯出來的ptx檔....

當然當初設計這樣NVidia只是單純考慮,他們已經寫好了c的批次檔跟Visual Studio整合在一起了,上述動作可以在Visual Studio自動完成,但根本不考慮其他平台的便利性,要用就要自己去搞....

這裡有Java binding for CUDA的教學,過程很繁瑣 (http://www.jcuda.de/tutorial/Tutori...CreatingKernels),但同樣的動作在Java binding for OpenCL也只需要2,3行code而已...
舊 2011-12-15, 02:08 AM #10
回應時引用此文章
jiahan離線中