ParsecとEASY-GPU-PVを組み合わせた「GPUの使えるVM」構築は、ネットメディアでも記事になり色々試す人も出てくるだろうと思われるが、なかなかにわかりにくいハマリポイントもあるので、備忘録を残しておく。
記事
PCWatch
ISOのeditionについての問題は解決しないまま記事になっている。
Qiita
EASY-GPU-PVが行っていることを手動で実行したい場合参考になる。
EASY-GPU-PV
Parsec
EASY-GPU-PVを使う場合、VMには自動でインストールされるので、VMに接続するクライアント用。
事前準備(EASY-GPU-PV私訳)
- Windows 10 20H1+ Pro/Enterprise/Education、もしくはWindows 11 Pro/Enterprise Educationのいずれか
- 互換性が向上しているため、ホスト、VMともにWindows 11を推奨。
- ホストとVMとで稼働させるOSバージョンは同じものにしておくこと。違うバージョンを使うと互換性の問題や、ブルースクリーン、その他の問題が発生する恐れがある(例: Win10 21H1 + Win10 21H1、Win11 21H2 + Win11 21H2、等)
- NVIDIA/AMDの内蔵ではないGPU、もしくはIntelの内蔵GPUを搭載したデスクトップPC
- NVIDIA GPUを載せたノートPCは現時点で非サポートだが、Intel内蔵GPUを使うのであれば動作する。GPUは、NVIDIA NVENC、Intel Quicksync、AMD AMFといった、ハードウェアビデオエンコードの機能が必須。
- 訳注) Ryzen5600Gの内蔵GPUでも動作した
- ベンダ提供の最新のGPUドライバ
- Windows Update任せにしない事
- マイクロソフトからダウンロードできる最新のWindows 10/11のISOイメージ
- Windows10(https://www.microsoft.com/en-gb/software-download/windows10ISO)
- PCWatchの記事にもある通り、一般にはダウンロードできない
- Windows11(https://www.microsoft.com/en-us/software-download/windows11)
- メディア作成ツールを使ってはならない
- Windows10(https://www.microsoft.com/en-gb/software-download/windows10ISO)
- マザーボードUEFI/BOISで仮想化機能を有効にし、OS側ではHyper-Vの機能を全面的に有効にする
- リブート必須。
- Powershellスクリプトが動作するように事前準備する
- 典型的な方法として、管理者権限で立ち上げたPowershell上で、"Set-ExecutionPolicy unrestricted"を実行する。
CopyFilesToVM.ps1の編集について
ISOのedition情報
CopyFilesToVM.ps1ファイルに記述されているparamsのeditionは、使うisoによって値が違うので注意すること。
EASY-GPU-PVのページに書かれている情報では、Win10/11のISOで"6"を指定するとProになるとあるが、これはおそらく英語版での話。
筆者が確認したところ、Win11日本語isoでは"3"がProだったが、各々のEditionに対応する数字は、iso内のsources/install.wimファイル(7zip等で開ける)に含まれる[1].xmlファイルに書いてある。
複数GPUが存在する環境の注意点
一般的な問題かどうかは不明だが、GPUが複数存在している筆者の環境の場合、GPU名はAUTOではなく明示しないとスクリプトがデバイスドライバのインストールに失敗した。
- EASY-GPU-PVスクリプトはGPUドライバファイルをホストからVMにコピーするが、当該状況の場合、どうも見当違いのドライバをコピーしてしまうようだ