Twitterに投稿 はてなブックマークに追加 Yahoo!ブックマークに追加 Google Bookmarksに追加

目次 >> CUDA >> インストール(Windows編)

CUDA - インストール(Windows編)

NVIDIAのGPGPU開発環境であるCUDA(Compute unified device architecture)をインストールして、使ってみる。
使用機材は、WindowsXP向けが
GeForce8400 GS
AMD Athlon 64X2 5200+
RAM 4GB
マザーボードASUS M2NPV-VM

CUDAのインストール

まず、Visual C++ 2005をインストールする。(現時点では、Visual C++ 2008はサポートしていない。)仮に、Visual C++ 2008で実行しようとしても、

>nvcc template.cu
nvcc fatal : nvcc cannot find a supported cl version. Only MSVC 7.1 and MSVC 8.0 are supported

の様なエラーが出てコンパイルできない。
Visual C++のインストールが終わったら、次に、CUDA Toolkit version 1.1 for Windows XPをインストールし、次に、CUDA SDK version 1.1 for Windows XPをインストールする。

CUDA Toolkit version 1.1 for Windows XPのインストール

まず、このページ(http://www.nvidia.com/object/cuda_get.html)からダウンロードする。NVIDIA_CUDA_Toolkit_1.1_x86.exeというファイルをダブルクリックすると、

ここは次へ。

ライセンスに同意して、

ルートディレクトリにインストールされるのがいやではあるが、とりあえずこのままインストール。

インストールボタンを押すとインストールが始まり、

これで完了。

CUDA SDK version 1.1 for Windows XPのインストール

Toolkitとおなじ、このページ(http://www.nvidia.com/object/cuda_get.html)からダウンロードする。NVIDIA_CUDA_SDK_1.1_x86.exeというファイルをダブルクリックすると、

ここは次へ。

ライセンスに同意して次へ。

名前と組織を入力して次へ。

これはC:\Program Files以下にインストールされる。

インストールボタンを押すとインストールが始まる。

これで完了。

環境変数の設定

デフォルトの設定では、コマンドラインからコンパイルできない。統合環境もよいが、将来的にUnix上でも動くものを作成するためにも、コマンドラインからコンパイルできるようにしておく。

デフォルトのパスにインストールされているとすると、環境変数INCLUDEはVisual C++のも含めると、

C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE;C:\Program Files\NVIDIA Corporation\NVIDIA CUDA SDK\common\inc

LIBも同様に

C:\Program Files\Microsoft Visual Studio 8\VC\LIB;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib;C:\CUDA\lib;
C:\Program Files\NVIDIA Corporation\NVIDIA CUDA SDK\common\lib

とセットする。

PATHは

C:\CUDA\bin;C:\Program Files\Microsoft Visual Studio 8\VC\bin;C:\Program
Files\Microsoft Visual Studio 8\Common7\IDE;

さらに、cutil32.dllといったdllを検出できるよう

C:\Program Files\NVIDIA Corporation\NVIDIA CUDA SDK\bin\win32\Release;C:\Program Files\NVIDIA Corporation\NVIDIA CUDA SDK\bin\win32\Debug

を追加する。

サンプルファイル「simpleTemplates」をコンパイルしてみる。

C:\Program Files\NVIDIA Corporation\NVIDIA CUDA SDK\projects\simpleTemplates

というフォルダに、simpleTemplatesというサンプルファイルがあるので、上手く設定できたかどうかを確かめる意味も含めてコンパイルしてみる。

上記フォルダ内のsimpleTemplates.slnをダブルクリックなどで開くと、Visual C++が立ち上がるはずである。ここで単にビルドして、

Processing time: 39.757286 (ms)
Test PASSED
Processing time: 0.503695 (ms)
Test PASSED

Press ENTER to exit...

の様に出れば、成功である。

次に、統合環境を使わずに、コマンドプロンプトからコンパイルしてみる。必要なファイルは、

sharedmem.cuh
simpleTemplates.cu
simpleTemplates_kernel.cu

である。まず、nvccを使って、objファイルを作る。

nvcc -ccbin "C:\Program Files\Microsoft Visual Studio 8\VC\bin" -c -DWIN32 -D_CONSOLE -D_MBCS -Xcompiler /EHsc,/W3,/nologo,/Wp64,/O2,/Zi,/MT simpleTemplates.obj simpleTemplates.cu

simpleTemplates.cu
tmpxft_00000adc_00000000-3.gpu
tmpxft_00000adc_00000000-7.gpu
tmpxft_00000adc_00000000-3.c
tmpxft_00000adc_00000000-12.i

の様にコンパイルされる。これからリンカを使ってexeファイルを作る。

link /OUT:simpleTemplates.exe simpleTemplates.obj cudart.lib cutil32D.lib kernel32.lib

Microsoft (R) Incremental Linker Version 8.00.50727.42
Copyright (C) Microsoft Corporation. All rights reserved.

とエラーがなく完了すれば、simpleTemplates.exeというファイルができているはずである。


本文中のFC4はFedora ProjectのFedora Core 4を、FC5はFedora Core 5を、FC6はFedora Core 6をopenSUSEはNovellのSUSE Linux OSSを表します。Fedora7以降は、単にFedora7、Fedora8、Fedora9、Fedora10、Fedora11、Fedora12、Fedora13、Fedora14、Fedora15と表示しています。Ubuntuは、必要に応じて10.04、11.04のようにバージョン番号をつけて区別しています。MandrivaはMandriva Linuxを表します。

ここに登場するドメイン名やIPアドレスなどはフィクションです。実在の人物・団体等とは一切関係がありません。
実際に使用する際は、各自の環境に合わせて書き換えてください。
もし何か間違いなどありましたらこちらからご連絡ください
リンクに許可は不要です。
Copyright (C) 2011 Chikuma Engineering Co., Ltd. All Rights Reserved.