NVIDIA HPC SDKは、HPCアプリケーションのパフォーマンスを最大化するために不可欠な実績のあるコンパイラ、ライブラリ、およびソフトウェアツールが含まれた包括的なソフトウェア・スイートです。
クロスプラットフォームでパフォーマンス移植可能でスケーラブルな HPC アプリケーションを構築するための実証済みのツールとテクノロジを提供します。

NVIDIA HPC SDK は無料でダウンロードでき、すべてのNVIDIA登録開発者向けの永久使用ライセンスが含まれており、将来のリリース・アップデートも発行される度にアクセスできます。

本稿では連載形式で、CPU/GPUの能力を引き出しアプリケーションの性能を高めるために使用される、NVIDIA HPC SDKのソフトウェア、ライブラリ、ツール等の使い方を解説していきたいと思います。

初めに、CPUやGPU用に最適化するNVIDIA HPCコンパイラの利用方法を複数回に渡って、様々な角度から説明します。

また、C、C++、Fortranプログラムが、CPUやGPU用に最適かつ高速なパフォーマンスが得られるように、コンパイル・オプションの使い方や使用における注意点等を説明していく予定です。

INDEX

1. NVIDIA HPC コンパイラとは

  1. NVIDIA HPC コンパイラとは
  2. 各言語コンパイラについて
  3. NVIDIA HPCコンパイラは、何ができるの?
  4. CPUの能力を引き出し、速い実行モジュールを作る
  5. OpenMP並列プログラミングモデルを使用し、並列実行モジュールを作る
  6. OpenACC並列プログラミングモデルを使用し、並列実行モジュールを作る
  7. 最新のISO言語規格に準拠する構文による並列処理をサポートする
    1. Fortran 2008標準並列プログラミング
    2. C++17標準並列プログラミング

2. NVIDIA HPC SDKのインストール方法

NVIDIA HPC SDKのインストールは簡単です。
従来のtarファイルを展開する方法もあるのですが、ここでは、Linux distributions のパッケージ管理ユーティリティを使用してシステムに実装する方法を説明します。

NVIDIA HPC SDKを使用するために、以下の4つの作業を行います。

 1. GNUツールチェーンのインストール
 2. NVIDIA HPC SDKソフトウェアのインストール
 3. エンドユーザ環境の設定
 4. NVIDIAドライバーのインストール(GPUを計算で使用する場合のみ)

3. NVIDIA HPC コンパイラを使ってみる

NVIDIA HPCコンパイラを手早く使ってみたいというユーザのために、性能を向上させるためのオプションから説明していきます。その後、様々な目的のために使用されるコンパイラ・オプションを順番に説明していくこととします。

  1. システム情報を知るための便利なコマンド
  2. コンパイラのコマンドライン構文
  3. 最適化オプションとして、-fastを覚えておこう
  4. さらなるグローバルな最適化オプション
  5. よく使用されるコンパイル・オプション

随時、掲載予定です。


共同制作:プロメテック・ソフトウェア株式会社 [グループ会社]