CUDA™ 6.0 開発環境をインストールする (Windows版)

対象 GPU CUDA 6.0 インストール Windows 7, 8

 PGIアクセラレータ™ コンパイラを使用する前に、NVIDIA社の CUDA™ 開発環境をインストールしておく必要があります。ここでは、 一例として、Windows 7 上に CUDA 6.0 環境をインストールする手順を説明します。なお、Windows 8, 8.1 等でも同じ手順となります。ここでの前提は、ハードウェアシステムの中に、NVIDIA 社の GPU が実装されていることとします。
2014年5月12日 Copyright © 株式会社ソフテック 加藤

必要とするハードウェア、ソフトウェア環境

 PGIアクセラレータ™ コンパイラを使用するためには、NVIDIA社の CUDA-enable な GeForce、Quadro、Tesla カードを有した CUDA ソフトウェアがインストールされたシステムが必要です。サポートされる GPU の詳細なリストは、NVIDIA の ウェブサイトでご覧下さい。http://www.nvidia.com/object/cuda_gpus.html
なお、現在、Windows上に搭載している GPU ボードの型番を調べたい場合は、「コントロールパネル」ー「システム」ー「デバイスマネージャ」を開きます。以下の例では、GTX 480と不明なボードの二つの グラフィックボードが実装されているのが分かります。この不明なボードは、新しい GPU ボードでこれに対応するドライバーが実装されていないような状況が以下の表示例です。新しい Tesla K20(Keplar)シリーズのボードなども、対応ドライバーが実装されていない場合、以下の例とは異なる別のデバイス配下で表示されることもあります。

GPU

 不明となっているボードに関するディスプレイドライバーをNVIDIA社のサイトからダウンロードして実装します。

GPU

ドライバーをインストールすると、以下のようにボード名が明示されます。

GPU

 Windows システム上で NVIDIAの最新ドライバーコンポーネントをインストールしておく必要があります。

  • 搭載GPUボード用の最新のディスプレイ・ドライバーへの更新。 (ドライバーのダウンロードサイト) この NVIDIA社のサイトから適切な最新ディスプレイ・ドライバーをダウンロードして、このインストールを実施します。

 次に、NVIDIA の Webサイト( http://developer.nvidia.com/cuda-downloads ) から、CUDA 6.0 用の CUDAソフトウェアをダウンロードします。これらは、PGIコンポーネントではありませんので、NVIDIA 社によってライセンス並びにサポートされます。なお、CUDA ドライバー、Toolkit、SDK samples の3つのコンポーネントが一つのファイルに含まれております。Windows の OS が 32ビットの場合は、32bit用、64ビットの場合は、64bit 用を選びダウンロードします。

  • (一例、64ビット Windows 7/8 用)cuda_6.0.37_winvista_win7_win8.1_general_64.exe

NVIDIA 英文インストレーション・ガイドは、こちらで見ることが出来ますので、併せて参照してください。

CUDA ソフトウェアのインストール

 今回は、Windows 7 / 8 (64bit) にインストールするため、上記のサイトから Windows 7 / 8 (64bit) 用のソフトウェアをダウンロードします。これらは、「管理者権限」でインストールを行います。

(注意)Windows版 CUDA 6.0 のデフォルト・インストールでは、Microsoft Visual Studio 2008, 2010, or 2012/2013 のいずれかを事前にインストールしておく必要があります。もし、これらがシステム内に存在しない場合、CUDAインストレーションは途中で終了します。但し、CUDA ドライバーソフトウェアのみのインストールの場合は、 Visual Studio の事前実装は必要ありません。PGI Accelerator コンパイラにおいて必要なソフトウェアは、最小限 「CUDA ドライバーのみ」必要ですので、Visual Studio を所有していない場合は、以下に説明する「カスタム」インストールを選び、CUDAドライバーのみ実装しても結構です。

(注意)CUDA のインストールは、Microsoft Windows や Visual Studio のアップデート(Windows update で表示されるもの)を実施し、システムリブート後に行った方が無難です。下記の要領で CUDA 6.0 のインストールが失敗したというメッセージが出た場合、Windows や VIsual Studio の最新アップデートがなされているか、確認した方が良いでしょう。

Windows上でのインストール

 Windows上でのCUDAドライバー/Toolkit等のインストールは極めて簡単です。ダウンロードしたファイルをダブルクリックするだけで、インストールが開始され、ウイザード形式で指示するだけでインストールが完了します。デフォルトでは、CUDA ドライバー、Toolkit、SDKサンプルの全てがインストールされます。CUDA Toolkit に関してはインストールしなくても、PGIコンパイラは動作します。PGIコンパイラは、ここでインストールされる NVIDIA提供の CUDA Toolkit(Library)を使用せず、PGIソフトウェアの中にバンドルされた CUDA Toolkit のサブセットを使用します。

CUDA ソフトウェアのウイザード例

driver画面

システム内の Visual Studio の実装状況を調査結果を表示

driver状況

CUDA ドライバーのウイザード完了

toolkit

 以上で、CUDA の開発環境のセットアップは終了します。

実装したCUDA ドライバーのバージョン確認

 実装した CUDA Driver のバージョンを確認するには、デスクトップ上の PGI Workstation のアイコンをダブル・クリックして、あるいは、PGI Visual Fortran のコマンドプロンプトを起動し、PGIコマンド・プロンプト用のウィンドウを開きます。その上で、PGIのコマンドである "pgaccelinfo.exe" コマンドを実行します。以下のような出力が現れます。この中で、CUDA Driver Version として表示された番号が CUDA ドライバーのバージョンに相当します。6000 の場合は、 CUDA 6.0 ドライバーがインストールされていると言う意味になります。

PGI$ pgaccelinfo.exe
CUDA Driver Version:           6000

Device Number:                 0
Device Name:                   Tesla K20c
Device Revision Number:        3.5
Global Memory Size:            1073545216
Number of Multiprocessors:     13
Number of SP Cores:            2496
Number of DP Cores:            832
Concurrent Copy and Execution: Yes
Total Constant Memory:         65536
Total Shared Memory per Block: 49152
Registers per Block:           65536
Warp Size:                     32
Maximum Threads per Block:     1024
Maximum Block Dimensions:      1024, 1024, 64
Maximum Grid Dimensions:       2147483647 x 65535 x 65535
Maximum Memory Pitch:          2147483647B
Texture Alignment:             512B
Clock Rate:                    705 MHz
Execution Timeout:             No
Integrated Device:             No
Can Map Host Memory:           Yes
Compute Mode:                  default
Concurrent Kernels:            Yes
ECC Enabled:                   No
Memory Clock Rate:             2600 MHz
Memory Bus Width:              320 bits
L2 Cache Size:                 1310720 bytes
Max Threads Per SMP:           2048
Async Engines:                 2
Unified Addressing:            Yes
Current free memory:           992063488
Upload time (4MB):             1090 microseconds ( 620 ms pinned)
Download time:                 1250 microseconds ( 780 ms pinned)
Upload bandwidth:              3847 MB/sec (6765 MB/sec pinned)
Download bandwidth:            3355 MB/sec (5377 MB/sec pinned)
PGI Compiler Option:           -ta=tesla:cc35
PGI GPU 用コンパイラ情報サイト