Wie verwende ich NVIDIA GeForce M310 unter Ubuntu 12.10, das als Gast in VirtualBox ausgeführt wird?

10

Die letzten Wochen haben mit Ubuntu 12.10 herumgespielt. Dies wird als Gast auf Virtualbox ausgeführt, die unter Windows 7 gehostet wird. Bei Unity 3D gab es einige Herausforderungen. Insbesondere, weil X11 Release 1.13 bis vor kurzem nicht unterstützt wurde. Seit heute können wir Virtualbox Version 4.2.2 herunterladen, die durch Gastzugaben auch X11 Release 1.13 unterstützt. Bisher tolle Arbeit an alle.

Da Unity jetzt nur im 3D-Modus ausgeführt wird, wäre es schön, direkt von Virtualbox auf die Grafikkarte zuzugreifen. lshw -c displayzeigt : VGA compatible controller; product: VirtualBox Graphics Adapter.

FRAGE: Wie bekomme ich 3D und andere Grafiken, die direkt von der Hardware unterstützt werden, dh Nvidia GeForce M310

huub
quelle
Die einzige Möglichkeit besteht darin, VBox loszuwerden und Ubuntu als Dual-Boot oder mit dem Windows-Installationsprogramm auf realer Hardware zu installieren.
Mike, was auch immer

Antworten:

15

PCI-Passthrough

PCI-Passthrough wird in neueren PUEL- Versionen ( Virtual Box Closed Source ) experimentell unterstützt . Es gibt jedoch mehrere Einschränkungen, dh für eine Grafikkarte, die wir aus dem Virtual Box-Benutzerhandbuch lesen können :

AGP- und bestimmte PCI Express-Karten werden derzeit nicht unterstützt, wenn sie auf GART basieren

Ich kann nicht sagen, ob dies beim Nvidia M310 der Fall ist. Sie müssen dies zuerst herausfinden, bevor Sie es versuchen.

Damit PCI-Passthrough funktioniert, benötigen wir außerdem ein Motherboard mit einer aktivierten IOMMU aus den BIOS-Einstellungen (z. B. VT-d für Intel, AMD-Vi für AMD).

Es sind mehrere zusätzliche Voraussetzungen zu erfüllen ( Einzelheiten finden Sie im Virtual Box-Handbuch ):

  • Ihr Motherboard verfügt über eine IOMMU-Einheit.
  • Ihre CPU unterstützt die IOMMU.
  • Die IOMMU ist im BIOS aktiviert.
  • Die VM muss mit VT-x / AMD-V und aktiviertem verschachteltem Paging ausgeführt werden.
  • Ihr Linux-Kernel wurde mit IOMMU-Unterstützung, DMA-Remapping und dem PCI-Stub-Treiber kompiliert.
  • Ihr Linux-Kernel erkennt und verwendet die IOMMU-Einheit.

Anschließend können wir ein PCI-Gerät mit seinen bus:device.functiongelesenen Eigenschaften lspcian unsere virtuelle Maschine anschließen, indem wir:

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

Überprüfen Sie im Gast mit, lspciob das Gerät ordnungsgemäß angeschlossen wurde, bevor Sie Treiber für dieses Gerät installieren.

Weitere Einschränkungen finden Sie auch im Virtual Box-Handbuch .

Takkat
quelle
8
Wie wäre es jetzt, ein paar Tage bis zum Jahr 2015? Ist "PCI Passthrough" vollständig in Virtual Box implementiert?
user280121
3

Ab 2016 ist es vollständig implementiert, aber für Linux-Gäste experimentell.

Das PCI-Passthrough-Modul wird als VirtualBox-Erweiterungspaket geliefert, das separat installiert werden muss. Weitere Informationen finden Sie in Abschnitt 1.5, „Installieren von VirtualBox und Erweiterungspaketen“.

Im Wesentlichen ermöglicht diese Funktion die direkte Verwendung physischer PCI-Geräte auf dem Host durch den Gast, selbst wenn der Host keine Treiber für dieses bestimmte Gerät hat. Es werden sowohl normale PCI- als auch einige PCI Express-Karten unterstützt. AGP- und bestimmte PCI Express-Karten werden derzeit nicht unterstützt, wenn sie für die Texturverwaltung auf der Programmierung der GART-Einheit (Graphics Address Remapping Table) basieren, da sie eher nicht triviale Vorgänge mit Seiten-Remapping ausführen, die IOMMU stören. Diese Einschränkung kann in zukünftigen Versionen aufgehoben werden.

Quelle: VirtualBox-Handbuch

Willi Mentzel
quelle