次の方法で共有


InfiniBand の有効化

適用対象: ✔️ Linux VM ✔️ Windows VM ✔️ フレキシブル スケール セット ✔️ 均一スケール セット

RDMA 対応HB シリーズおよび N シリーズ VM の通信は、低待機時間で高帯域幅の InfiniBand ネットワークを介して行われます。 そのような相互接続を介した RDMA 機能は、分散ノードの HPC および AI ワークロードのスケーラビリティとパフォーマンスを向上させるために重要です。 InfiniBand 対応の HB シリーズおよび N シリーズの VM は、最適で一貫した RDMA のパフォーマンスのための、小直径設計の非ブロッキング ファット ツリーで接続されます。

対応する VM サイズで InfiniBand を有効にするには、さまざまな方法があります。

診断を高速化するために VM アシストを試してください。 Windows 用の VM アシストまたは Linux 用の VM アシストを実行することをお勧めします。 これらのスクリプト ベースの診断ツールは、Azure VM ゲスト エージェントと VM の全体的な正常性に影響する一般的な問題を特定するのに役立ちます。

仮想マシンでパフォーマンスの問題が発生している場合は、サポートに連絡する前に、これらのツールを実行してください。

InfiniBand ドライバーが含まれる VM イメージ

Marketplace でサポートされている VM イメージの一覧については、「VM イメージ」を参照してください。これらは、InfiniBand ドライバーとともにあらかじめ読み込まれています (SR-IOV または非 SR-IOV の VM の場合)。または、RDMA 対応 VM に適切なドライバーを使用して構成できます。 マーケットプレースの Ubuntu-HPC および AlmaLinux-HPC VM イメージが、最も簡単な作業の開始方法です。

InfiniBand ドライバー VM 拡張機能

Linux の場合、SR-IOV 対応の HB シリーズと N シリーズの VM で、InfiniBandDriverLinux VM 拡張機能を使用して、Mellanox OFED ドライバーをインストールし、InfiniBand を有効にすることができます。

Windows では、InfiniBandDriverWindows VM 拡張機能は、RDMA 接続用に Windows Network Direct ドライバーを (SR-IOV に非対応の VM 上に) インストールするか、または Mellanox OFED ドライバーを (SR-IOV VM 上に) インストールします。 A8 インスタンスと A9 インスタンスの特定のデプロイでは、HpcVmDrivers 拡張機能は自動的に追加されます。 HpcVmDrivers VM 拡張機能は廃止される予定であり、更新されないことに注意してください。

VM に VM 拡張機能を追加するには、Azure PowerShell コマンドレットを使用できます。 詳しくは、仮想マシン拡張機能とその機能に関する記事をご覧ください。 クラシック デプロイ モデルにデプロイされている VM にも拡張機能を使用できます。

手動のインストール

Mellanox OpenFabrics ドライバー (OFED) は、SR-IOV 対応のHB シリーズN シリーズの VM に手動でインストールできます。

Linux

Linux 用 OFED ドライバーは、次の例を使用してインストールできます。 ここでの例は RHEL 用ですが、手順は一般的であり、Ubuntu (22.04、24.04) や SLES (12 SP4 以降、15) などの互換性のある Linux オペレーティング システムで使用できます。 他のディストリビューションのその他の例については、azhpc-images リポジトリを参照してください。 受信トレイドライバーも同様に機能しますが、OFED ドライバーではさらに多くの機能が提供されます。

MLNX_OFED_DOWNLOAD_URL=http://content.mellanox.com/ofed/MLNX_OFED-5.0-2.1.8.0/MLNX_OFED_LINUX-5.0-2.1.8.0-rhel7.7-x86_64.tgz
# Optionally verify checksum
wget --retry-connrefused --tries=3 --waitretry=5 $MLNX_OFED_DOWNLOAD_URL
tar zxvf MLNX_OFED_LINUX-5.0-2.1.8.0-rhel7.7-x86_64.tgz

KERNEL=( $(rpm -q kernel | sed 's/kernel\-//g') )
KERNEL=${KERNEL[-1]}
# Uncomment the lines below if you are running this on a VM
#RELEASE=( $(cat /etc/redhat-release | awk '{print $4}') )
#yum -y install http://olcentgbl.trafficmanager.net/redhat/${RELEASE}/updates/x86_64/kernel-devel-${KERNEL}.rpm
sudo yum install -y kernel-devel-${KERNEL}
sudo ./MLNX_OFED_LINUX-5.0-2.1.8.0-rhel7.7-x86_64/mlnxofedinstall --kernel $KERNEL --kernel-sources /usr/src/kernels/${KERNEL} --add-kernel-support --skip-repo

Windows

Windows の場合は、Windows 用の Mellanox OFED ドライバーをダウンロードしてインストールします。

IP over InfiniBand (IB) を有効にする

MPI ジョブを実行する予定がある場合は、通常、IPoIB は必要ありません。 MPI ライブラリでは、IB 通信に動詞インターフェイスが使用されます (MPI ライブラリの TCP/IP チャネルを明示的に使用しない場合)。 ただし、通信に TCP/IP を使用するアプリがあり、IB 経由で実行したい場合は、IB インターフェイスで IPoIB を使用できます。 次のコマンド (RHEL 用) を実行して、IP over InfiniBand を有効にします。

重要

問題を回避するには、古いバージョンの Microsoft Azure Linux エージェント (waagent) を実行していないことを確認します。 IB 経由で IP を有効にするには、少なくともバージョン 2.4.0.2 を使用することをお勧めします。

sudo sed -i -e 's/# OS.EnableRDMA=n/OS.EnableRDMA=y/g' /etc/waagent.conf
sudo systemctl restart waagent

次のステップ