仮想マシンに vGPU PCI カードを割り当てた際にエラーが発生する:「仮想 IOMMU の使用は、vGPU デバイスを搭載した仮想マシンではサポートされていません」
search cancel

仮想マシンに vGPU PCI カードを割り当てた際にエラーが発生する:「仮想 IOMMU の使用は、vGPU デバイスを搭載した仮想マシンではサポートされていません」

book

Article ID: 432756

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

免責事項:これは英文の記事「When assigning vGPU PCI card to VM get error : The use of a virtual IOMMU is not supported on this virtual machine with a vGPU device」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。


Linux 仮想マシンに NVIDIA vGPU を割り当てようとする際、次のエラーメッセージで処理が失敗します:「仮想 IOMMU の使用は、vGPU デバイスを搭載した仮想マシンではサポートされていません」。この初期エラーを解決した後、Linux 仮想マシンは起動する場合がありますが、nvidia-smi コマンドは次のエラーで失敗します:"NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver".

Environment

VMware vSphere ESXi

Cause

初期エラーの根本原因は、仮想マシン内の設定競合です。特定のワークロード用の仮想 IOMMU を有効化するパラメータ (vvtd.enable) が TRUE に設定されていました。この構成は、GPU リソース管理のハイパーバイザに依存する vGPU アーキテクチャとは互換性がありません。

nvidia-smi コマンドのエラーは、仮想マシンが vGPU デバイスを受け入れるために正しく構成されているにもかかわらず、仮想ハードウェアと通信するために必要な NVIDIA vGPU ソフトウェアドライバがインストールおよびロードされていないために発生します。

 

Resolution

問題を解決するために下記手順を順に実行します。

IOMMU 構成の競合を修正します。

  • 仮想マシンをパワーオフします。

  • vSphere Client にて、仮想マシンの 設定の編集 > 仮想マシンのオプション > 詳細設定 > 構成パラメータ に移動します。

  • 下記パラメータが追加されているか、あるいは値が FALSE であるか確認します。

    • vvtd.enable

    • pciPassthru.vmiop.allowViommu

    • pciPassthru.vmiop.enableViommu

  • 変更を保存するために OK をクリックし、再度 vGPU デバイスの割り当てを実施します。

 

Additional Information

vvtd.enable パラメータは、ネストされた仮想化、あるいは 128 個以上の vCPU で構成された VM などの特定の状況において、Broadcom KB 313255 で参照されているように、通常 TRUE に設定されます。標準的な vGPU 構成でこの設定を適用すると、サポート対象外の状態が生じます。

NVIDIA vGPU ドライバは、ライセンス付きソフトウェアスイートの一部であり、標準的なパブリックドライバとは異なります。有効なライセンスを使用して NVIDIA Enterprise ポータルからダウンロードする必要があり、ホストの vGPU Manager とバージョンを一致させる必要があります。