Azure HPC VM イメージ
適用対象: ✔️ Linux VM ✔️ フレキシブル スケール セット ✔️ 均一スケール セット
この記事では、InfiniBand 対応 H シリーズおよび GPU 対応 N シリーズ VM の起動に使用される HPC VM イメージに関する情報をいくつか説明します。
Azure HPC チームでは、HPC と AI のワークロード用に最適化された事前構成済みの Linux VM イメージを提供しています。 これらの VM イメージは次のとおりです。
- アップストリーム Ubuntu と AlmaLinux マーケットプレイスの VM イメージに基づいています。
- InfiniBand、NVIDIA GPU ドライバー、一般的な MPI ライブラリ、ベンダーがチューニングした HPC ライブラリ、推奨されるパフォーマンス最適化用の NVIDIA Mellanox OFED ドライバーで事前構成されています。
- 最適なパフォーマンス、一貫性、信頼性を実現する最適化と推奨構成が含まれています。
Azure での可用性
HPC イメージは、Azure Marketplace または Azure CLI から VM を作成するときに使用できます。 その他のデプロイ方法については、HPC VM イメージのデプロイに関するセクションを参照してください。
Azure Marketplace
発行元 Microsoft-DSVM
で Ubuntu HPC
を、または発行元 AlmaLinux
で AlmaLinux HPC
を検索します。
Azure CLI
次のコマンドを実行して、HPC イメージのイメージ URN を検索します。
Ubuntu-HPC
az vm image list --publisher microsoft-dsvm --offer ubuntu-hpc --output table --all
すべてのイメージで Gen 2 VM がサポートされています。
AlmaLinux-HPC
az vm image list --publisher almalinux --offer almalinux-hpc --output table --all
すべてのイメージは、Gen 1 と Gen 2 の両方の VM をサポートします。
サポートされる VM のサイズ
HPC VM イメージは、次の VM サイズをサポートしています。
- Standard_HB60rs
- Standard_HB120rs_v2
- Standard_HB120rs_v3
- Standard_HB120rs_v4
- Standard_HC44rs
- Standard_ND40rs_v2
- Standard_ND96asr_v4
- Standard_ND96amsr_A100_v4
- Standard_ND96isr_H100_v5
最新の H シリーズと N シリーズでの VM サイズのサポート マトリックスについては、Azure VM のサイズを参照してください。
インストールされているソフトウェア パッケージ
- Mellanox OFED 24.01-0.3.3.1
- 事前構成済みの IPoIB (IP-over-InfiniBand)
- 一般的な InfiniBand ベースの MPI ライブラリ
- HPC-X v2.18 (PMIx-4 あり/なし)
- Intel MPI 2021.12.0
- MVAPICH2 2.3.7-1
- OpenMPI 5.0.2 (PMIx-4 あり)
- 通信ランタイム
- Libfabric
- OpenUCX
- NCCL 2.21.5-1
- NCCL RDMA Sharp プラグイン
- 最適化されたライブラリ
- AMD Optimizing C/C++ と Fortran Compilers 4.0.0-1
- Intel MKL 2024.0.0.49673
- GPU ドライバー
- NVIDIA GPU ドライバー 535.161.08
- NVIDIA ピア メモリ (GPU Direct RDMA)
- NVIDIA Fabric Manager
- CUDA 12.4
- GDRCopy 2.3
- Data Center GPU Manager 3.3.3
- Azure HPC Diagnostics Tool
- SKU ベースのカスタマイズ
- トポロジ ファイル
- NCCL 構成
- Moby 24.0.7-ubuntu22.04u1
- NVIDIA Docker コンテナー 24.0.7-1
- Azure Managed Lustre 2.15.4-42-gd6d405d
- Moneo v0.3.5
- Azure HPC Health Checks v0.4.2
VM イメージ内のインストール済みバージョン インデックスは、次の場所にあります: /opt/azurehpc/component_versions.txt
。
MPI ライブラリとソフトウェア パッケージは、環境モジュールとして使用できます。 MPI ライブラリ/パッケージを読み込むには、次を実行します。
module load mpi/<mpi-library-name>
module load <package-name>
構成と最適化
各 VM イメージに含まれるパッケージと構成の最新の詳細情報については、GitHub の azhpc-images リポジトリを参照してください。 含まれる構成は、ベンダーやパートナーからの最適化に関する推奨事項と、従来の HPC システムでの一般的な HPC ワークロードと使用慣習から学習した内容に基づいています。
Azure Linux エージェント (WAAgent)
- waagent (各 Azure Linux VM で実行中の VM エージェント) による CPU/メモリ リソースの使用量を制限します。
- CPU センシティブなワークロードに対しては、必要に応じて次のように、ジョブ スクリプトの最初で waagent を無効にし、最後にもう一度有効にすることを検討してください。
sudo systemctl stop waagent <HPC job> sudo systemctl restart waagent
メモリ制限を高くする
- max-locked-memory 制限を unlimited に設定する
- 開いているファイルの数の限度を 65535 に設定する
ゾーン再利用モード
- zone_reclaim_mode を 1 に設定する
MPI ジョブ起動ツールを支援するためにファイアウォール デーモンを無効にする
HPC VM イメージのデプロイ
示されているように、HPC VM イメージは Azure Marketplace と Azure CLI から入手できます。 これらは、Azure 上のさまざまなデプロイ手段 (Azure CycleCloud、Azure Batch、ARM テンプレートなど) を介してデプロイできます。 AzureHPC スクリプトは、これらのイメージを使用して HPC クラスターをすばやくデプロイする簡単な方法を提供します。