Visual Studioで、CUDA開発できる環境を構築する手順メモ。CUDA 2.2, Visual Studio 2008でのお話。

☆CUDA ToolKit, CUDA SDK

http://www.nvidia.com/object/cuda_get.htmlからCUDA ToolKitとCUDA SDKをダウンロードして、インストール。環境変数CUDA_BIN_PATH, CUDA_INC_PATH, CUDA_LIB_PATHにそれぞれ実行時パス、インクルードパス、ライブラリのパスが入っているので、Visual Studioのオプションからパスを通す。必要に応じて、CUDASDK_ROOT\common\incCUDASDK_ROOT\common\libにもパスを通す。

☆Syntax Highlighting

シンタックスハイライトは、CUDA SDKのインストールフォルダ以下の、NVIDIA Corporation\NVIDIA CUDA SDK\doc\syntax_highlighting\visual_studio_8あたりにあるusertype.datを使います。このファイルを\Program Files\Microsoft Visual Studio 9.0\Common7\IDEに放り込みます。んで、Visual Studioでオプション -> テキストエディタ -> ファイル拡張子で、拡張子にcuを入れてMicrosoft Visual C++のエディタとしてセット。

☆カスタムビルド規則

CUDAのプロジェクトを作るのはめんどくさい。手っ取り早いのは、CUDA VS Wizardを使う方法。SourceForgeからダウンロードしてインストールすると、Visual Studioでプロジェクト作成のときにCUDA Projectが選べるので、それを利用する。

カスタムビルド規則のルールファイルは\Program Files\Microsoft Visual Studio 9.0\VC\VCProjectDefaultsにあるCuda.rules。違うパソコンでソリューションを開くときにはこれがなかったり違ったりすると怒られます。

☆InteliSense

レジストリの変更は自己責任でお願いいたします。

公式にアナウンスされている方法ではありませんが、かろうじてインテリセンスを働かせる方法があります。レジストリのHKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\Languages\Language Services\C/C++にあるNCB Default C/C++ Extensionsのキーに;.cu;.cuhを加えてください。

参考リンク:
http://www.bv2.co.uk/?p=730

PS:

研究室ではGeforce GTX 280使ってるんですが、家でも開発できたらいいなぁ…ということで、買っちゃいました。GTS 250。さすがにGTX 280には劣りますが、かなり快調に動いております。

nVIDIAのサイトで、今日からCUDA ZONEの日本語サイトがオープンしたみたいです。

CUDA ZONE(日本語)

プログラミング資料のところにCUDA Programming Guideの日本語版がアップされてます。まだほとんど読んでませんが、まぁ無理やり英語を日本語に直訳した感じだと思いますw読みにくいことこの上ない。。。

「エラー!ブックマークが定義されていません」なんて書いてありますし(笑)相当急いで作ったんでしょうね。

CUDAについてはがんばって倍精度化を達成してほしいものです。