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

対象 GPU CUDA 8.0 インストール Windows 7, 8.1, 10

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

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

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

GPU

 不明となっているボードに関するディスプレイドライバーをNVIDIA社のサイトからダウンロードして実装します(但し、必須ではありません)。

GPU

driver画面

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

GPU

 CUDA 7.0 のパッケージから、CUDAドライバーの他にグラフィックス・ドライバーの部分も同時にインストールするように変更になったようですので、ここの段階で、グラフィックス・ドライバーをインストールしなくても良いかもしれません。

 次に、NVIDIA の Webサイト( http://developer.nvidia.com/cuda-downloads ) から、CUDA 8.0 用の CUDAソフトウェアをダウンロードします。これらは、PGIコンポーネントではありませんので、NVIDIA 社によってライセンス並びにサポートされます。なお、CUDA ドライバー、Toolkit、SDK samples の3つのコンポーネントが一つのファイルに含まれております。以下の例は、Local Installer 用のファイル(1.2GB)を使用して実施したものです。なお、Windows 32bit 用のソフトウェアは CUDA 7.0 から廃止されましたのでご注意下さい。

  • (64ビット Windows 7/8.1 用)cuda_8.0.44_windows.exe
  • (64ビット Windows 10 用)cuda_8.0.44_win10.exe

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

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

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

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

(注意)CUDA のインストールは、Microsoft Windows や Visual Studio のアップデート(Windows update で表示されるもの)を実施し、システムリブート後に行った方が無難です。下記の要領で CUDA 8.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 ドライバーのバージョンに相当します。8000 の場合は、 CUDA 8.0 ドライバーがインストールされていると言う意味になります。

PGI$ pgaccelinfo.exe
CUDA Driver Version:           8000

Device Number:                 0
Device Name:                   GeForce GTX 780
Device Revision Number:        3.5
Global Memory Size:            3221225472
Number of Multiprocessors:     12
Number of SP Cores:            2304
Number of DP Cores:            768
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:                    941 MHz
Execution Timeout:             Yes
Integrated Device:             No
Can Map Host Memory:           Yes
Compute Mode:                  default
Concurrent Kernels:            Yes
ECC Enabled:                   No
Memory Clock Rate:             3004 MHz
Memory Bus Width:              384 bits
L2 Cache Size:                 1572864 bytes
Max Threads Per SMP:           2048
Async Engines:                 1
Unified Addressing:            Yes
Managed Memory:                Yes
PGI Compiler Option:           -ta=tesla:cc35

PGI GPU 用コンパイラ情報サイト