CUDA.NET
CUDAをC#で使うためのライブラリ (Ver.2.0.3)
http://www.gass-ltd.co.il/en/products/cuda.net/
- Windows2000 SP4
- VC#2005EE
- GeForce8400GS
の環境で動かしてみたのでメモ。
- CUDAのドライバ (Ver.178.28)
- Toolkit (Ver.2.0)
の2つだけインストール。(ドライバは、サイト上の表記は対応OSがWindowsXPだけど、ちゃんとファイル名にWin2kって入ったものが落ちてくる。)
あと、nvccがVisualStudio付属のC++コンパイラ(cl.exe)を必要とするので
- VC++2005EE
をインストール。(これはVCでなくて、WindowsSDKでも良かったかもしんない。)
cl.exeにパスが通っていなかったので、
- 環境変数にパスを追加
以上でCUDA.NETが使えるので、CUDA.NETのページにあるSampleをビルドして実行。結果は
- clock
- OK
- bitonic sort
- OK
- simpleCUFFT
- 実行出来るけど、『ERROR, l2-norm error 0.7161518 is greater than epsilon 1E-05』ってのが出て失敗。計算精度が足りない?block数とか変えればどうにかなんのかな??
- asyncAPI
- CopyHostToDeviceAsyncメソッドを呼び出すところでエラー発生(CUStream型の変数を呼び出すあたりでエラーが起きてるっぽい。原因不明)
とりあえず動いたので今日はこの辺で終了。EEだと、VC#で.cuファイルの色分け、補完が利かないのが不便だなぁ。。。