Suchen Sie nach Tipps: Erstellen einer Workstation um Xen- und GPU-Pass-Through

8

Ich baue gerade meine neue Heimmaschine und wie üblich wird dies eine stark überlastete Workstation sein, die als Entwicklungs- und Testmaschine, Dateiserver und Spielekonsole dient (außerdem füge ich TV-Karten und Multimedia-Streaming für mein Heimnetzwerk hinzu). .

Da diese Anwendungsfälle gegeneinander arbeiten (der Dateiserver ist nicht verfügbar, wenn der Computer als Spielekonsole verwendet wird), denke ich stark über die Verwendung von Xen nach, um alles auf einmal bereitzustellen. Die Leistung sollte im Allgemeinen kein Problem sein, aber der Anwendungsfall der Spielekonsole erfordert definitiv den direkten Zugriff auf eine GPU.

Daher habe ich mehrere Fragen:

  • ist das generell machbar?
  • Ist der GPU-Passthrough für Nicht-Server-GPUs ausreichend verwendbar?
  • Nach welchen Technologien sollte ich beim Kauf auf dem Motherboard suchen (höchstwahrscheinlich wieder Gigabyte + Intel-CPU wählen)?
  • Gibt es eine Virtualisierungstechnologie am Horizont, auf die es sich zu warten lohnt?
  • Wie gut kann Xen Ressourcen aufteilen?
    • Der Dateiserver- und Multimedia-Streaming-Teil der Workstation muss funktionieren, auch wenn der Teil der Spielekonsole 100% seiner Ressourcen verbraucht und umgekehrt
  • Das System läuft auf 8 Festplatten mit der Software Raid6 und LVM. Sollte ich eine dedizierte Festplatte für den Spielekonsolenteil des Systems kaufen?
    • Ich habe über ein Problem mit der Xen- und E / A-Leistung gelesen

Jede Eingabe wird sehr geschätzt.

PS Es macht mir nichts aus, eine andere Technologie als Xen zu verwenden, aber mir ist keine andere Virtualisierungsplattform bekannt, die GPU-Passthrough unterstützt.

Šimon Tóth
quelle
Warum sollte Gaming den Dateiserver blockieren? Spiele verwenden nicht alle Kerne, und Windows 7 kann das Multitasking problemlos verwalten.
Martin
@ Martin Weil ich Windows nicht als Dateiserver benutze. Ich bin nicht so verrückt :-D Fileserver + Multimedia-Streaming wird unter Linux durchgeführt.
Šimon Tóth

Antworten:

3

Die Informationen über PCI-Passthrough sind furchtbar veraltet und nicht hilfreich.

Ich habe eine HD 7850 und eine Nvidia-Junk-PCI-VGA-Karte, die ein Jahrzehnt alt sein muss. Keines dieser Geräte unterstützt das Zurücksetzen auf Funktionsebene. Beide arbeiten einwandfrei und werden an DomUs weitergeleitet. Ich führe meine Domain0 kopflos ohne Grafikkarte aus. Beide Karten werden beim Booten über ein Kernel-Argument an pciback gesendet.

Xen ist ziemlich gut darin, einer VM Ressourcen zuzuweisen und keinen Zugriff auf andere Ressourcen zuzulassen. Sie können Ihren vcpus an pcpus (Kerne, Threads) anheften und dedizierten Speicher zuweisen. Wenn Sie sich für ein High-End-Nvidia entscheiden, müssen Sie möglicherweise einige Arbeiten für sich erledigen - aber es ist schwer zu sagen, da die Papiere / Aufzeichnungen, in denen auch Dinge wie das Zurücksetzen auf Funktionsebene stehen, eine Notwendigkeit sind: Sie sind es nicht mehr.

JJ
quelle
1

Der entscheidende Teil Ihres Setups ist die 3D-Leistung.

Ich habe vor 2-3 Jahren ziemlich viel mit Xen gearbeitet - die Ressourcenzuweisung hat damals gut funktioniert und ich bin sicher, dass sich die Technologie seitdem verbessert hat. Alles außer Spielen verbraucht entweder nur sehr wenige Ressourcen (Dateiserving, Streaming ...) oder ist nicht in Echtzeit kritisch (Kompilieren auf dem Entwicklungssystem usw.).

Ich habe kein GPU-Passthrough durchgeführt, aber flüchtiges Googeln bedeutet nicht, dass es zuverlässig funktioniert . Eine Optimierung ist erforderlich. Grundsätzlich wird es kein Plug & Play sein - Sie sind so ziemlich sicher, dass einige / einige / viele Spiele nicht funktionieren.

Die zuverlässigste Option wäre meiner Meinung nach, Win7 als Host und für Spiele zu verwenden und die anderen Dienste als virtuelle Maschinen über VirtualPC oder VirtualBox auszuführen. Es ist nicht die eleganteste Lösung (alles hängt von Windows ab, jeder Neustart bedeutet das Stoppen aller VMs usw.), aber wenn Sie Spiele möchten, die einfach funktionieren, ist dies der richtige Weg (außer die Verwendung eines zweiten Computers).

Martin
quelle
1

Ist das generell machbar?

Ja. Ich habe kürzlich Xen VGA-Passthrough durchgeführt und es hat gut funktioniert. Schauen Sie sich das folgende Video an: http://www.youtube.com/watch?v=Gtmwnx-k2qg

Ist der GPU-Passthrough für Nicht-Server-GPUs ausreichend verwendbar?

Ja und nein. Offiziell werden nur NVDIA Quadro FX 3800, 4800 und 5800 unterstützt, aber ich habe erfolgreich eine NVIDIA GeForce GTX 460 wie im vorherigen Video verwendet und Teo En Ming hat eine GeForce 8400 GS verwendet. Es kommt wirklich auf die Grafikkarte an.

Nach welchen Technologien sollte ich beim Kauf auf dem Motherboard suchen (höchstwahrscheinlich wieder Gigabyte + Intel CPU wählen)

Sie sollten sicherstellen, dass der Chipsatz die E / A-MMU (AMD-Vi / VT-d) unterstützt, dass die CPU AMD-V / VT-x unterstützt und dass die Grafikkarte den Funktionspegel-Reset (FLR) unterstützt.

Beachten Sie, dass diese Technik noch nicht ausgereift ist und erst dann funktioniert, wenn Sie sie ausprobieren!

Alarouche
quelle
0

Abhängig von den Spielen, die Sie ausführen möchten, ist es möglicherweise besser, Wine über Linux zu verwenden: Schauen Sie sich die Wine Application Database an , und es gibt kommerzielle Versionen von Wine, die möglicherweise eine bessere Kompatibilität bieten. Sie benötigen nicht einmal eine Windows-Lizenz.

In gewisser Weise bietet Wine GPU-Pass-Through, jedoch auf Windows-API-Ebene und nicht auf PCI-Ebene. Die 3D-Leistung ist zwischen Windows und Linux + Wine häufig vergleichbar.

Tom Shaw
quelle
0

Basierend auf meinen Erfahrungen mit Xen, hier die Frage / Antwort:

  1. Ist das generell machbar? Ja, bei richtiger Hardware und Konfiguration.
  2. Ist der GPU-Passthrough für Nicht-Server-GPUs ausreichend verwendbar? Ja, es gibt viele Benutzerberichte, die normalerweise AMD-Karten für VGA-Durchgänge und Spiele unter Windows verwenden.
  3. Nach welchen Technologien sollte ich beim Kauf auf dem Motherboard suchen (höchstwahrscheinlich wieder Gigabyte + Intel-CPU wählen)? VT-d (von AMD auch IOMMU oder AMD-V genannt) ist ein absolutes Muss. Bei Intel-CPUs müssen sowohl die CPU als auch das Motherboard / BIOS VT-d unterstützen. (Einige alte Intel-Chipsatz- / CPU-Konfigurationen unterstützen auch VT-d, aber das möchten Sie nicht für ein modernes System verwenden.) Schauen Sie hier: http://wiki.xen.org/wiki/VTdHowTo . Stellen Sie außerdem sicher, dass Sie eine getestete und bewährte Grafikkarte haben. Andernfalls funktioniert es möglicherweise nicht. Siehe XenVGAPassthroughTestedAdaptersals Referenz, obwohl die Liste nicht vollständig ist. Seien Sie bei der Hardwareauswahl sehr vorsichtig und kaufen Sie - wenn möglich - bei Anbietern, die Linux unterstützen, und geben Sie VT-d / IOMMU in ihren technischen Spezifikationen an. Warum? Weil ein BIOS-Update Ihr System leicht blockieren kann. Stellen Sie auf jeden Fall sicher, welche BIOS-Version VT-d unterstützt, und aktualisieren Sie nicht, es sei denn, Sie haben einen sehr guten Grund. Achten Sie auch auf Anbieter ohne Linux-Erfahrung - ihre Antworten können irreführend sein (um es höflich auszudrücken).
  4. Gibt es eine Virtualisierungstechnologie am Horizont, auf die es sich zu warten lohnt? Sowohl KVM als auch VMware unternehmen einige Anstrengungen, um zu reproduzieren, was Xen mit VGA / PCI-Passthrough macht. Einige KVM- und VMware-Benutzer haben Erfolge mit VGA-Durchgang gemeldet, insbesondere mit PCI-Durchgang. Ich bin nicht mit Microsoft Hyper-V vertraut, aber ich habe Berichte gesehen, dass es auch eine Art VGA-Durchgang unterstützt. Ich weiß nicht, wie gut Microsoft Linux unter Hyper-V unterstützt.
  5. Wie gut kann Xen Ressourcen aufteilen? Es scheint! In den Standardeinstellungen eignet es sich hervorragend zum Ausgleichen der CPU-Ressourcen. Es kann leicht feinabgestimmt werden, aber es gibt wirklich nicht viel zu tun, außer eine feste Menge an Speicher für dom0 zu reservieren und ihm im Scheduler möglicherweise eine etwas höhere Priorität zu geben. Der einzige Schwachpunkt, den ich finden konnte, ist die Netzwerkkonfiguration - es kann schwierig sein und ich muss noch einige kleinere Probleme lösen.
  6. Der Dateiserver- und Multimedia-Streaming-Teil der Workstation muss funktionieren, auch wenn der Spielekonsolenteil 100% seiner Ressourcen verbraucht und umgekehrt - A: Ich habe keine Probleme damit gesehen und kann es auf jeden Fall abgestimmt sein. Geben Sie dom0 genügend Ressourcen.
  7. Das System läuft auf 8 Festplatten mit der Software Raid6 und LVM. Sollte ich eine dedizierte Festplatte für den Spielekonsolenteil des Systems kaufen? Xen funktioniert sehr gut mit LVM. In einer Windows-Domäne ist es jedoch wichtig, den GPLPV-Festplattentreiber zu installieren, um eine gute Leistung zu erzielen! Sie haben auch die Möglichkeit, einen SATA-Controller an den Gast weiterzuleiten, damit dieser direkten Zugriff auf die Hardware erhält. Wenn eine Dateiübertragungsgeschwindigkeit von ~ 140-240 MB / s zwischen einer SSD und gestreiften LVM-Festplatten akzeptabel ist, würde ich keine dedizierte Festplatte für Spiele hinzufügen. Ihre RAID / LVM-Kombination sollte in Ordnung sein.
  8. Ich habe über ein Problem mit der Xen- und E / A-Leistung gelesen. A: Diese Berichte basieren möglicherweise auf dateibasiertem Speicher, der auch bei anderen Hypervisoren eine schlechte Leistung erbringt. Die Verwendung von LVM sollte eine gute Leistung bieten, solange dom0 über genügend RAM- und CPU-Ressourcen verfügt, um E / A zu verarbeiten. Bisher habe ich noch nie ein E / A-Problem bemerkt, selbst bei 100% CPU-Auslastung aller Kerne (i7 3930K 6-Core-CPU).
Kraftpaket
quelle