Wie verbessere ich die Leistung meines VirtualBox-Gasts?

38

Ich starte ein Gast-Ubuntu 12.04 auf einem Host-Ubuntu 12.04 mit VirtualBox, und der Gast ist viel, viel langsamer als der Host ( ALT+TABdauert 4-5 Sekunden). Ich sah mich um und fand widersprüchliche Meinungen zu VirtualBox versus VMware (kostenlos); also dachte ich, das erstere zu behalten.

Beide Systeme wurden aktualisiert, ich habe die Erweiterungen auf dem Gast installiert und Speicher und Videospeicher (64 MB) gleichmäßig zwischen Gast und Host aufgeteilt. Ich verwende einen Toshiba m200-Laptop mit 4 GB RAM und gemeinsam genutztem Videospeicher. Das Host-BIOS enthält keine Konfigurationsoption für die Maschinenvirtualisierung. Ich habe 2 CPU und ich kann sie nicht beide zur virtuellen Maschine geben.

Was habe ich übersehen, um mein Problem zu lösen?

Fühlen Sie sich frei, um weitere Informationen zu bitten, und danke für jede Hilfe.

EDIT Farbverreibung mit dem Systemmonitor öffnet der (einziger) Gast cpu nie unter 55% bekommt und könnte auf 80 steigen - 90% nur mit der Maus um zu bewegen. Wenn Sie Firefox öffnen, zeigt der Systemmonitor die CPU-Auslastung des Gastsystems zu 100% an, während der Host anzeigt, dass beide CPUs zu etwa 60% gleichmäßig funktionieren.

Meine CPU ist Intel® Core™2 Duo CPU T5450 @ 1.66GHz × 2.

Handelt es sich nicht um ein Konfigurationsproblem, ist mein Computer für die Virtualisierung zu schwach?

ökologisch
quelle
selbst wenn ich unity2d installiert habe (was geholfen hat) und verschiedene konfigurationen ausprobiert habe, ist das vm immer noch zu langsam für meinen geschmack, so dass ich die idee mittlerweile aufgegeben habe
ecoologic
Ich denke, die Antwort von JohnP ist hier am angemessensten.
Léo Léopold Hertz 준영

Antworten:

29

Ich weiß nicht viel über Player, aber die Vbox-Standardeinstellungen sind nicht gut für Ubuntu-Versionen, die eine echte GPU bevorzugen.

  • Ordnen Sie auf sich drehenden Festplatten die gesamte virtuelle Festplatte vorab zu. Auf SSDs spielt es keine Rolle. VDI / qcow2-Sparse-Allokationen verringern zwar die Leistung, die damit verbundenen Reduzierungen scheinen jedoch seit 2015 weniger als 10% zu betragen.
  • Ordnen Sie nur den Speicher zu, den Sie benötigen. Bewahren Sie große Dateien an einem anderen Ort außerhalb von vStorage auf.
  • Weisen Sie niemals mehr CPUs oder RAM zu, als Sie sollten. 1 vCPU ist wahrscheinlich genug.
  • Belassen Sie 1 GB RAM für das HostOS. Überladen Sie den Arbeitsspeicher nicht.
  • Verwenden Sie die VirtIO-Treiber für Speicher und Netzwerk. Moderne Linux-Gäste unterstützen dies. Verwenden Sie für Windows-Gäste die Treiber SATA (Speicher) und Intel PRO / 1000 (Netzwerk). Es ist möglich, virtio-Treiber unter Windows zu verwenden, es ist nur ein bisschen schwieriger.
  • Aktivieren Sie ACPI und AHCI für alle Gäste ab 2003, WinXP und höher.
  • Desktop-VMs sollten alle 128 MB Display-vRAM erhalten
  • Server-VMs sollten bei 9 MB vRAM bleiben. Verschwende es nicht.
  • Vermeiden Sie 2D- und 3D-Beschleunigungseinstellungen, bis alles andere nach Ihren Wünschen funktioniert. Ich meine es ernst. Ubuntu macht schlechte Dinge, wenn dies aktiviert ist. Es kann einen Core i7 auf den Boden bringen.

Für weitere Informationen: http://blog.jdpfu.com/2012/09/14/solution-for-slow-ubuntu-in-virtualbox

JohnP
quelle
1
Wie kann die gesamte virtuelle Festplatte vorab zugewiesen werden?
Toskan
5
"Verwenden Sie die VirtIO-Treiber für den Speicher" - Sofern ich nichts Offensichtliches vermisse, implementiert VirtualBox keinen paravirtualisierten Speicher. Wenn ja, sag mir bitte wo, weil ich es gerne benutzen würde.
Cdhowie
Ordnen Sie nur den Speicher zu, den Sie benötigen . Ich bin damit nicht einverstanden. Sie können die Festplatte dynamisch auf 50 GB einstellen. Sie haben Probleme mit der Stabilität, wenn Sie zu wenig Speicherplatz zuweisen. Dynamisch erweiterbarer Speicherplatz beansprucht nicht die ganze Zeit, sondern nur so viel, wie er benötigt.
Léo Léopold Hertz 준영
Die einzige Möglichkeit, die Festplatte vorab zuzuweisen, besteht darin, das vboxmanage-Tool zu verwenden und die alte VDI-Datei in eine neue, vollständig zugewiesene VDI-Datei zu kopieren.
JohnP
Sah, dass vbox vor kurzem virtio Treiber enthält.
JohnP
7

Ein virtueller Gast mit so geringen Ressourcen wird langsam ausgeführt. Für die beste Leistung geben Sie Ihrem Gastgeber tatsächlich ein bisschen mehr Ressourcen als dem Gast. Außerdem können Sie Ihrer virtuellen Maschine nicht beide CPUs zuweisen, da Ihre Host-Maschine etwas benötigt, um alles auszuführen.

Denk darüber so. Ihr Host-Computer muss sein eigenes System sowie den Container für den Gast ausführen. Der Gast gerät mit dem Host-Rechner in einen Ressourcenkampf. Versuchen Sie dem Gast weniger zu geben und sehen Sie, wie es läuft.

Für eine optimale Leistung benötigen Sie einen 64-Bit-Computer mit mehr als 4 GB Arbeitsspeicher.

Nate
quelle
Ich habe tatsächlich mehrere Konfigurationen ausprobiert, bevor ich die Community gefragt habe. RAM sollte in diesem Stadium kein Problem sein (das meiste davon ist ungenutzt). Nach Ihrer Antwort sollte sich das Problem hauptsächlich auf die CPU stützen (oft bei 100%). Ich habe gelernt, dass mein Laptop stark genug ist, vielleicht irre ich mich hier ...
ecoologic
Ein Gedanke könnte sein, die Ressourcennutzung sowohl auf dem Host als auch auf dem Gast zu beobachten und zu sehen, was wo erschöpft ist. Welchen Prozessortyp haben Sie?
Nate,
Es ist nicht die schnellste Maschine, die Sie jemals sehen werden, aber sie hat mich nie enttäuscht (Antwort aktualisiert).
ecoologic
Ja, ich würde sagen, dass Ihre Maschine für eine schnelle Virtualisierung nicht leistungsfähig genug ist. Sie haben es offensichtlich am Laufen, also liegt es an Ihnen, ob Sie mit der Geschwindigkeit leben wollen.
Nate
2
@ecoologic: Unity2D läuft viel schneller - hast du es versucht?
Takkat
4

Zusätzlich zu den vorherigen Antworten für optimale VirtualBox-Einstellungen gibt es einen großartigen Blog-Beitrag von Nam Huy darüber, wie 3D-Beschleunigung für einen Ubuntu-Gast funktioniert. Dies ist besonders nützlich für Ubuntu 13.04, da es keine Option mehr gibt, Unity 2D zu installieren, und eine Neuinstallation ohne reale Arbeitsbelastung auf 80-100% der CPU-Auslastung aufgrund von Software-Rendering verbleibt, was es für mich praktisch unbrauchbar macht.

Die Grundidee ist, Gast-Additionen zu installieren, "vboxvideo" zu laden, neu zu starten etc/modulesund dann die 3D-Beschleunigung in den VirtualBox-Anzeigeeinstellungen zu aktivieren. Beachten Sie, dass das Aktivieren der 3D-Beschleunigung der allerletzte Schritt sein muss, nachdem Sie alles andere im Gast konfiguriert haben.

Für mich bedeutete dies einen enormen Leistungsschub. Im Vollbildmodus kann ich nicht einmal den Unterschied zwischen meinem nativen Betriebssystem und dem Ubuntu-Gast feststellen.

pederpansen
quelle
Für diejenigen, die auch "Database Connection Error" erhalten, gibt es eine zwischengespeicherte Version von Way Back: web.archive.org/web/20160320085343/https://namhuy.net/951/…
Pavel
4

Ich habe das gleiche Problem erlebt

Host: Ubuntu 14.10 (64-Bit), Gast: Windows 7 (64-Bit)

Selbst mit der im Host-BIOS aktivierten Virtualisierung lag die CPU-Auslastung im Gast-Leerlauf konstant bei 40-50%

Was mir geholfen hat, war die Installation von Guest Addition mit Direct 3D-Unterstützung (dies muss im abgesicherten Modus erfolgen) und das Einschalten des Host- E / A-Cache des SATA-Controllers

Meine aktuellen Einstellungen sind also:

System

Basisspeicher: 4096 MB (8192 MB Gesamtspeicher des Hosts)

Prozessor: 6 CPUs (von Host 6 CPUs)

PAE / NX: Aktiviert

VT-x / AMD-V: Aktiviert

Verschachteltes Paging: Aktiviert

Anzeige

Videospeicher: 128 Mb

3D-Beschleunigung: Aktiviert

2D-Beschleunigung: Aktiviert

Klappt wunderbar! Virtual Box Version: 4.3.18_Ubuntu r96516

Timofey Bondarenko
quelle
0

Obwohl die anfängliche Antwort sehr detailliert ist, glaube ich, dass die direkte Antwort ehrlich ist, dass das System / der Laptop zu langsam und zu schwach ist. Es kann nicht viel getan werden, es sei denn, es gibt ein Konfigurationsproblem oder einen Fehler in Ihrer Virtualbox-Version. Sie können versuchen, zu optimieren, aber der Host-RAM und die 2 CPU-Kerne mit 1,66 GHz werden es einfach nicht schaffen. Bei dieser CPU-Auslastung ist es sehr wahrscheinlich, dass der Arbeitsspeicher ausgetauscht wird und nicht genügend Arbeitsspeicher vorhanden ist.

Kurz gesagt, Sie könnten einen anderen Fenstermanager ausprobieren, der weniger umfangreich ist, und auch andere Betriebssysteme ausprobieren, um festzustellen, ob möglicherweise ein Konfigurationsproblem mit Ihrer Virtualbox vorliegt, und auf die neueste Version aktualisieren.

Areeb Soo Yasir
quelle