次の方法で共有


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-DSVMUbuntu HPC を、または発行元 AlmaLinuxAlmaLinux 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 クラスターをすばやくデプロイする簡単な方法を提供します。