2010-02-23 31 views
6

我最近開始學習如何使用openCL來加速我的部分代碼。迄今爲止,速度增益令人印象深刻。在一種情況下,代碼的運行速度比在CPU上快50倍。不過,我想知道是否可以開始在生產環境中使用此代碼。原因是,我第一次嘗試運行示例代碼,沒有任何工作。我可以通過在Nvidia openCL SDK下載頁面下載驅動程序來運行它(我有一個Geforce GTX260)。它在安裝過程中給了我一個藍色,但之後我能夠運行示例程序並創建自己的代碼。我可以在分發給非開發人員機器的應用程序中使用openCL嗎?

對於我來說,「開箱即用」這一事實是否意味着主流驅動程序還不支持它,儘管事實上它是專門寫在驅動程序下載頁面上的? ATI支持怎麼樣?每個人都必須下載安裝時給我一個藍屏的特殊驅動程序?

總之,openCL是否準備好了生產代碼?

如果有人能給我一些細節,我想知道。有沒有人能夠在沒有安裝任何SDK相關的許多不同設備上運行一個簡單的程序?

+2

我不知道生產就緒的openCL是如何工作的,但可以肯定地設計你的應用程序,以便它可以檢測到openCL,如果不可用,可以使用傳統的CPU方法,以便用戶可以輕鬆地強制進行常規的CPU計算。 – 2010-02-23 03:51:03

+1

我知道你已經記下了「回到Khronos論壇尋找答案」,但如果你這樣做,你不會讓人們指出MS在做什麼。我有完全相同的困境......我擁有一些GPU代碼,這些代碼對於我所做的事情是必需的,但對於如何將實際可重用工具交付給客戶而言毫無頭緒。 如果您要在客戶端機器上部署GPU代碼,您有兩種選擇:1)在Mac上的Snow Leopard上使用OpenCL,或者2)使用DirectCompute並需要Windows 7 + DirectX 11 – 2010-03-05 03:03:08

回答

3

您可以在Khronos Group留言板上的OpenCL論壇上找到準確的答案。 OpenCL工作組定期掛在那裏。

1

有誰已經能夠運行在許多不同 設備的 簡單的程序,而無需安裝任何 SDK相關?

Nop。例如,在ATI的GPU上,最終用戶需要安裝ATI Stream SDK才能運行OpenCL代碼(只有最新的圖形驅動程序是不夠的)。

1

您可能需要考慮嘗試DirectCompute(微軟的GPU編程版本)或在Snow Leopard Mac上執行OpenCL工作。這些是我知道的兩種方式,您可以將GPU編程解決方案提供給其他用戶,而無需任何驅動程序或其他安裝麻煩。

相關問題