1つのGPUを複数の仮想マシンで共有する技術。リソース効率を向上。
GPU仮想化とは、物理的に存在する1つのGPU(Graphics Processing Unit)を、複数の仮想マシン(VM)で共有して利用できるようにする技術です。従来のGPU利用では、各VMに専用のGPUを割り当てる必要がありましたが、GPU仮想化により、GPUリソースの利用効率を大幅に向上させることができます。
仕組み: GPU仮想化は、ハイパーバイザーと呼ばれる仮想化ソフトウェアが、GPUリソースを分割・管理することで実現されます。ハイパーバイザーは、GPUの処理能力を複数の仮想GPU(vGPU)に分割し、各VMにvGPUを割り当てます。VMは、割り当てられたvGPUを通じてGPUの機能を利用できます。
使用例: データセンターやクラウド環境で、複数のユーザーが同時にグラフィカルなアプリケーションを実行する場合に、GPU仮想化が活用されます。例えば、CAD/CAMソフトウェア、ゲーム、AI/機械学習のトレーニングなど、GPU処理を必要とするアプリケーションを、複数のVMで同時に実行できます。NVIDIA vGPUなどのソフトウェアは、データセンターでのGPU仮想化を可能にします。
GPU Passthroughとの違い: GPU PassthroughもGPUをVMに割り当てる技術ですが、GPU全体を1つのVMに排他的に割り当てる点が、GPU仮想化と異なります。GPU Passthroughでは、VMはGPUのすべての機能を利用できますが、他のVMとGPUを共有することはできません。GPU仮想化は、GPUリソースの共有に重点を置いています。
自作PCでの重要性: 一般的な自作PC環境では、GPU仮想化の利用頻度は高くありません。しかし、複数のオペレーティングシステム(OS)をVM上で動作させ、それぞれでGPU処理を行いたい場合や、ゲーム配信などの用途でGPUリソースを柔軟に割り当てたい場合には、GPU仮想化が有効な選択肢となりえます。ただし、GPU仮想化に対応したハードウェアとソフトウェアが必要であり、設定も高度な知識を要するため、上級者向けの技術と言えます。
例えば、Proxmox VEなどの仮想化プラットフォームを使用することで、GPU PassthroughとGPU仮想化の両方を利用できます。AMD SR-IOV対応のGPUと組み合わせれば、GPU仮想化をより効率的に実現可能です。しかし、家庭用GPUでGPU仮想化を完全サポートするものは限られているため、導入前に十分な調査が必要です。