Version 21.2
Release Notes原文
当ページは原文の意訳となっております。
1. 新機能について
NVIDIA HPC SDKはCPU, GPU, インターコネクトといったHPCプラットフォーム全体のプログラム開発を可能にするコンパイラとライブラリの包括的パッケージです。
NVIDIA HPC SDK for Linux 21.2はバグ修正をメインとしたリリースです。
2. リリースに含まれる各コンポーネントのバージョン
各コンポーネントについて、バージョン番号が記載されております。各バージョンについて詳細を確認したい場合は原文の表をご確認ください。
3. サポートされるプラットフォーム
3.1. プラットフォーム要件
Linuxディストリビューション、gcc/glibcの最低バージョン、CUDAドライバの最低バージョンが記載されております。
詳細は原文の表をご確認ください。
3.2. サポートされるCUDA Toolkitのバージョン
NVIDIA HPC SDKは、NVIDIA GPUを用いたプログラムをビルドする場合にCUDA Toolchainの機能を使用します。すべてのNVIDIA HPC SDKは必要なCUDAコンポーネントをインストールディレクトリにインストールします。インストール先のパスは [install-prefix]/[arch]/[nvhpc-version]/cuda です。
GPU用にコンパイルされたプログラムを実行するためには、GPU搭載システムにNVIDIA CUDA GPUデバイスドライバのインストールが必要です。NVIDIA HPC SDKにはCUDAドライバは含まれませんので、適切なCUDAドライバをNVIDIAからダウンロードする必要があります。
システムにインストールされたCUDAドライバのバージョンを確認するためにnvaccelinfoコマンドが利用できます。nvaccelinfoはドライババージョンを最初の行に出力します。
NVIDIA HPC SDK 21.2はCUDA toolchainとして以下のバージョンをインストールし、standaloneでサポートします。
- CUDA 10.2
- CUDA 11.0
- CUDA 11.2
11.1のstandaloneサポートが外れていますのでご注意ください。
NVIDIA HPC SDKの各HPCコンパイラでCUDA toolchainのバージョンを切り替えて使いたい場合、各コンパイラのユーザーガイドを参照ください。
4. 制限事項
comm_libs/mpi/bin
から直接MPI実行ファイルを起動する場合は、環境変数LD_LIBRARY_PATH
を明示的に設定してcompilers/lib
ディレクトリを含むようにするか、NVIDIA HPC SDKに含まれるモジュールファイルを使用してMPI実行ファイルにアクセスしなければなりません。- Intel Skylakeアーキテクチャ用にコンパイルを行う場合には、ターゲットプロセッサのコンパイラオプションとして
-tp skylake
を指定することをお勧めします。リンク時に-tp skylake
を指定するかはオプションです。 - cuda-gdbデバッガにおいて、一定でない境界を持つFortran配列は正しく処理されず、値を問い合わせた場合に誤った結果を表示します。CUDA FortranおよびOpenACCカーネルのステップ実行は部分的にサポートされていますが、正しくない行番号が表示されます。cuda-gdbの追加の一般的な制限についてはドキュメントを参照してください。
- コンパイラオプション
-stdpar
を使用してC++ Parallel algorithmを高速化する場合、各アルゴリズムは仮想関数や関数ポインタ、C++の例外は使用できず、ヒープを指すポインタのみを使用することができ、かつランダムアクセスイテレータでなければいけません。イテレータとしては生ポインタが最適に機能します。
5. 廃止事項
- NVIDIA HPC SDK 21.2はCUDA Compute Capability 3.5 (cc35) 以上をサポートします。
- NVIDIA HPC SDK 21.2はKNL (Knights Landing) アーキテクチャのマルチコアCPUサポートを非推奨とします。
- NVIDIA HPC SDK 21.2でppc64le (64-bit big-endien PowerPC) アーキテクチャのシステムにおけるUbuntu OSのサポートを終了します。