2012-03-03 20 views
1

我一直在嘗試使用GPU作爲我的一個項目的一部分。我研究過CUDA和OpenCL,但缺乏向您展示如何將這些內容引入到項目中的信息令人震驚。即使他們的專用論壇組已經死亡。所以現在,我正在研究DirectCompute。DirectCompute信息

從我所知道的,它只是一種使用HLSL的新型着色器文件。我的問題是,我的程序(除了DirectX 10/11)是否需要更改其結構?

我的意思是,它只是一個創建CS文件的情況,在項目中設置,就像其他任何着色器一樣,並觀察魔法的發生?

任何信息,將不勝感激。

回答

2

是CS適合通常的DirectX編程結構。它的工作方式與CUDA/OpenCL類似。這裏是一個很好的,簡單的例子:

http://openvidia.sourceforge.net/index.php/DirectCompute

個人而言,我會建議使用CUDA/OpenCL的,而不是去的DirectCompute的途徑,如果你的項目不涉及圖形。我認爲CUDA/OpenCL更適合通用計算。它可能有點難以找到文件,但這些是GPU編程的主要方面:

  • 在CPU上設置數據傳遞給GPU。

  • 瞭解經紗/線程需要多少將在GPU上,線程可能需要如何交流等

  • 計算的GPU開始,在CPU上讀取數據回

1

最簡單的方法 - 就是要讓其採用CS與C#和項目SlimDX

And here是一個很好的網站基礎知識如何從C#代碼中使用CS。

稍後,您可以使用C++DirectX 11進行全面的CS探索。