HPC開発をより円滑に、
よりスピーディーに進めることができます。


HPC Compiler Support Service とは・・・
NVIDIAのテクニカルサポートを受けることができます。

Professional Support Service とは・・・
HPC Compiler Support Service に加え、プロメテック・ソフトウェアによる
日本語でのテクニカルサポートを受けることができます。

NVIDIA HPC SDK とは

HPC 用のコンパイラ、ライブラリ、ツールの包括的なスイート

NVIDIA HPC ソフトウェア開発キット (SDK) には、開発者の生産性と HPC アプリケーションのパフォーマンスと
移植性を最大化するために不可欠な、 実績のあるコンパイラ、ライブラリ、およびソフトウェア ツールが含まれています。

NVIDIA HPC SDK を使うことにより、HPC 開発者は、インターコネクトを介して GPU から CPU におよぶHPC プラットフォーム全体をプログラムできるようになります。
NVIDIA HPC SDK は、アクセラレーテッド コンピューティング システムをプログラミングするための唯一の包括的な統合 SDK です。
NVIDIA HPC SDK C++ および Fortran コンパイラは、C++17 の並列アルゴリズムやFortranの Intrinsic など、標準言語構造の自動 GPU アクセラレーションをサポートする、初めてかつ唯一のコンパイラです。




NVIDIA HPC SDK を始めましょう

NVIDIA HPC SDK の最新バージョンを無料で使用することができます。

サポートされているプラットフォーム

・Linux x86_64
・Linux OpenPOWER
・Linux Arm
※ NVIDIA HPC SDK for Windowsは後日提供される予定です。

※ ソフトウェアをダウンロードして使用することにより、HPC SDKソフトウェアライセンス契約launch
  契約条件を遵守することに同意したことになります。
NVIDIA HPC SDK ドキュメント
(リリースノート、インストールガイド、ユーザーガイドなど)は こちらlaunch

NVIDIA HPC SDK の特徴

GPU数学ライブラリ

cuBLASおよびcuSOLVERライブラリは、可能な場合は自動的にNVIDIA GPU Tensorコアを使用して、LAPACKのすべてのBLASルーチンおよびコアルーチンのGPU最適化およびマルチGPU実装を提供します。
cuFFTには、実データおよび複素数データ用のGPU高速1D、2D、3D FFTルーチンが含まれており、cuSPARSEはスパース行列用の基本的な線形代数サブルーチンを提供します。
これらのライブラリは、C、C ++、およびFortranで記述されたCUDAおよびOpenACCプログラムから呼び出すことができます。


Tensorコア向けに最適化

NVIDIA GPU Tensorコアにより、科学者やエンジニアは、混合精度または倍精度を使用して適切なアルゴリズムを劇的に加速できます。
NVIDIA HPC SDK数学ライブラリはTensorコアとマルチGPUノード用に最適化されており、最小限のコーディングでシステムのパフォーマンスを最大限に引き出すことができます。
NVIDIA Fortranコンパイラを使用すると、変形配列組み込み関数をcuTENSORライブラリに自動的にマッピングすることにより、Tensorコアを活用できます。


CPUに最適化

HPCサーバーは、x86-64、OpenPOWER、またはArm命令セットアーキテクチャに基づく高速コンピューティングおよびマルチコアCPUにGPUを使用します。
NVIDIAコンパイラとツールはこれらのすべてのCPUでサポートされており、すべてのコンパイラ最適化はそれらをサポートするすべてのCPUで完全に有効になっています。
NVIDIA HPC SDKは、サポートされているすべてのシステムにわたって統一された機能、コマンドラインオプション、言語実装、プログラミングモデル、ツールとライブラリのユーザーインターフェイスを備えており、さまざまなHPC環境での開発者エクスペリエンスを簡素化します。

マルチGPUプログラミング

NVIDIA Collective Communications Library(NCCL)は、MPI互換のall-gather、all-reduce、broadcast、reduce、reduce-scatterルーチンを使用して、高度に最適化されたマルチGPUおよびマルチノードの集合通信プリミティブを実装し、HPCサーバーノード内およびノー​​ド間で使用可能なGPUを利用します。NVSHMEMは、GPUメモリのOpenSHMEM標準を実装し、ホストCPUまたはGPUから開始して、CUDAカーネル内から呼び出すことができるマルチGPUおよびマルチノード通信プリミティブを提供します。

スケーラブルシステムプログラミング

MPIは、分散メモリスケーラブルシステムをプログラミングするための標準です。 NVIDIA HPC SDKには、GPUDirect™をサポートするOpen MPIに基づくCUDA対応のMPIライブラリーが含まれているため、CUDAユニファイドメモリに割り当てられたバッファーを含むリモートダイレクトメモリアクセス(RDMA)を使用してGPUバッファーを直接送受信できます。 CUDA対応のOpen MPIは、CUDA C / C ++、CUDA Fortran、およびNVIDIA OpenACCコンパイラと完全に互換性があります。

Nsightパフォーマンスプロファイリング

Nsight™システムは、HPCサーバー上のアプリケーションパフォーマンスのシステム全体の視覚化を提供し、ボトルネックを解消し、マルチコアCPUとGPU全体で並列アプリケーションをスケーリングできるようにします。 Nsight Computeを使用すると、グラフィカルまたはコマンドラインのユーザーインターフェイスを介して、GPUで高速化されたアプリケーションのインタラクティブプロファイラーでGPUカーネルを詳しく調べることができ、NVTX APIを使用してソースコードの領域を直接計測することで、パフォーマンスのボトルネックを特定できます。

どこにでも導入

コンテナーは、アプリケーションとその依存関係をポータブル仮想環境にバンドルすることにより、ソフトウェアのデプロイメントを簡素化します。 NVIDIA HPC SDKには、HPC Container Makerを使用してソフトウェアを開発、プロファイリング、デプロイして、コンテナーイメージの作成を簡略化するための手順が含まれています。 NVIDIA Container Runtimeは、DockerやSingularityを含むほぼすべてのコンテナーフレームワークでシームレスなGPUサポートを可能にします。

HPC Compiler & Professional
Support Service

MENU