web-dev-qa-db-ja.com

VirtualBoxでゲストとして実行されているUbuntu 12.10でNVIDIA GeForce M310を使用する方法は?

最後の数週間は、Ubuntu 12.10で遊んでいました。これは、Windows 7でホストされているVirtualboxでゲストとして実行されています。Unity3Dにはいくつかの課題があります。特に、ごく最近までX11リリース1.13をサポートしていないためです。本日以降、Virtualboxバージョン4.2.2をダウンロードできます。これは、ゲストの追加によりX11リリース1.13もサポートします。 SO皆さん、すばらしい仕事をしました。

Unityは3Dモードでのみ動作するようになったため、Virtualboxから直接グラフィックカードにアクセスできれば便利です。 lshw -c displayの表示:VGA compatible controller; product: VirtualBox Graphics Adapter

質問:ハードウェア、つまりNvidia GeForce M310で直接サポートされている3Dおよびその他のグラフィックスを取得する方法

9
huub

PCIパススルー

PCIパススルーは、実験的に最近サポートされています Virtual Boxclosed source(PUEL) バージョン。ただし、いくつかの制限があります。つまり、グラフィックカードについては、 Virtual Box User Manual から読み取ることができます。

AGPおよび特定のPCI Expressカードは、GARTに依存している場合、現在サポートされていません

これがNvidia M310に当てはまるかどうかはわかりませんが、試す前にまずこれを把握する必要があります。

PCIパススルーを機能させるには、BIOS設定から IOMMU が有効になっているマザーボードも必要です(Intelの場合はVT-d、AMDの場合はAMD-Vi)。

満たすべき追加の前提条件がいくつかあります(詳細については Virtual Box Manual を参照してください):

  • マザーボードにはIOMMUユニットがあります。
  • CPUはIOMMUをサポートしています。
  • IOMMUはBIOSで有効になっています。
  • VMは、VT-x/AMD-Vおよびネストされたページングを有効にして実行する必要があります。
  • Linuxカーネルは、IOMMUサポート、DMA再マッピング、およびPCIスタブドライバーでコンパイルされました。
  • LinuxカーネルはIOMMUユニットを認識して使用します。

次に、lspciから読み取ったbus:device.functionプロパティを使用してPCIデバイスを仮想マシンに接続します。

VBoxManage modifyvm "VM name" --pciattach <Host-bus>:<Host-device>.<Host-function>@<guest-bus>:<guest-device>.<guest-function>.

このデバイス用のドライバーをインストールする前に、デバイスが正しく接続されている場合は、lspciでゲストを確認してください。

さらなる制限については、 Virtual Box Manual も参照してください。

15
Takkat

2016年現在、完全に実装されていますが、Linuxゲストの場合は実験的です。

PCIパススルーモジュールはVirtualBox拡張パッケージとして出荷されます。これは個別にインストールする必要があります。詳細については、セクション1.5「VirtualBoxおよび拡張パックのインストール」を参照してください。

基本的に、この機能により、ホストが特定のデバイス用のドライバーを持っていなくても、ゲストがホスト上の物理PCIデバイスを直接使用できます。通常のPCIカードと一部のPCI Expressカードの両方がサポートされています。 AGPおよび特定のPCI Expressカードは、GOM(Graphics Address Remapping Table)ユニットプログラミングに依存している場合、現時点ではサポートされていません。この制限は、将来のリリースで解除される可能性があります。

ソース: VirtualBoxマニュアル

3
Willi Mentzel