Warum läuft ein Ubuntu-Gast in VirtualBox sehr, sehr langsam?

174

Ich benutze derzeit Ubuntu 12.04 LTS als Host-Maschine, und ich habe drei Maschinen virtualisiert:

  • ein Xubuntu 12.04 Gast
  • ein Windows 7 Gast
  • ein Ubuntu 12.10 Gast

Alle Gäste haben die gleichen VirtualBox-Standardeinstellungen, aber Ubuntu 12.10 ist langsamer!

Die Installation dauerte 1h 40 min! (Normalerweise dauert es 40 Minuten.) Jetzt ist es unmöglich, es zu benutzen, und alle Operationen sind sehr, sehr langsam.

Ich benutze VirtualBox Version 4.2.4.

Irgendwelche Ideen?

Warum ist es langsam? Und wie kann ich es schneller machen?

    
Giorgio 28.10.2012, 20:26
quelle

6 Antworten

36

Ich habe gehört, dass es etwas damit zu tun hat, dass sie Unity 2D entfernt haben, oder Irgendwie verlangsamt der Wechsel zu 3D Unity nur die VM-Leistung, da man sich mehr auf die CPU verlässt als früher. Der Linux Outlaws Podcast hat ein wenig darüber gesprochen, aber ich vergesse die Episode.

Update: Das Problem besteht darin, dass Virtualbox Guest Additions in 12.10 keine 3D-Beschleunigung liefert. Siehe Ubuntu 12.10 kann keine 3D-Beschleunigung verwenden. Fehler beim Erstellen von DRM .

    
Bret 28.10.2012, 21:02
quelle
281

Ubuntu 12.10 enthält nicht mehr Unity 2D , die für Plattformen implementiert wurde, die keine 3D-Beschleunigung bereitstellen können. Stattdessen wird in Ubuntu 12.10 Unity unter LLVM ausgeführt, sodass der für die GPU bestimmte Code auf der CPU ausgeführt wird. Es ist viel langsamer als die Verwendung der GPU.

Um zu überprüfen, ob Ihr Ubuntu 12.10-Gast die 3D-Beschleunigung verwendet, führen Sie folgenden Befehl aus:

$ /usr/lib/nux/unity_support_test -p
Not software rendered:    no
Not blacklisted:          yes
GLX fbconfig:             yes
GLX texture from pixmap:  yes
GL npot or rect textures: yes
GL vertex program:        yes
GL fragment program:      yes
GL vertex buffer object:  yes
GL framebuffer object:    yes
GL version is 1.4+:       yes

Unity 3D supported:       no

Wie Sie sehen können, geben "Nicht gerenderte Software" und "Unity 3D" in diesem Beispiel "nein" zurück, was bedeutet, dass Unity langsames LLVMpipe verwendet.

So aktivieren Sie die 3D-Beschleunigung (nur VirtualBox 4.2.x)

Diese Anweisungen sind für VirtualBox 4.2.4 oder 4.2.6 gedacht, die von der VirtualBox-Website installiert wurden, nicht von Ubuntus Repo. Zukünftige Versionen von VirtualBox können dieses Problem automatisch beheben oder benötigen eine andere Problemumgehung.

  1. Installieren Sie das VirtualBox Oracle VM VirtualBox Erweiterungspaket.
  2. Erstellen Sie eine VirtualBox-Instanz und installieren Sie Ubuntu 12.10 darauf.
  3. Installieren Sie einige erforderliche Pakete für die Gast-Ergänzungen:

    sudo apt-get install linux-headers-$(uname -r) build-essential
    
  4. Installieren Sie die Gastzusätze, indem Sie auf Geräte klicken, Gastzugänge installieren und diesen Befehl im CD-ROM-Verzeichnis ausführen:

    sudo ./VBoxLinuxAdditions.run
    
  5. Fügen Sie der Instanz den vboxvideo -Treiber hinzu, indem Sie Folgendes ausführen:

    sudo bash -c 'echo vboxvideo >> /etc/modules'
    
  6. Herunterfahren der VirtualBox-Instanz.
  7. Öffnen Sie die Einstellungen der Virtualbox-Instanz, navigieren Sie zu "Anzeige" und aktivieren Sie "3D-Beschleunigung aktivieren".
  8. Starten Sie Ihren Ubuntu 12.10-Gast und überprüfen Sie, ob die 3D-Beschleunigung funktioniert:

    /usr/lib/nux/unity_support_test -p
    

Wenn Windows scheinbar dispepear ist, installieren Sie den CompizConfig-Einstellungsmanager und deaktivieren Sie das Framebuffer-Objekt (FBO) im OpenGL-Abschnitt:

  1. Installieren Sie den CompizConfig Einstellungsmanager:

    sudo apt-get install compizconfig-settings-manager
    
  2. Führen Sie den CompizConfig Einstellungsmanager aus:

    ccsm
    
  3. Wählen Sie den OpenGL-Abschnitt und deaktivieren Sie dann die Option Framebuffer-Objekt. Wenn dies das Problem behebt, sollte es sofort sichtbar sein. Kein Neustart erforderlich.
Flimm 09.11.2012 12:43
quelle
11

Es sieht so aus, als würden die VirtualBox-Softwareentwickler an einer Lösung arbeiten, aber sie ist noch nicht fertig - siehe Forenbeitrag Diskutiere die Version 4.2.4 .

Es gibt einen Thread, der dies in vier Minuten diskutiert Ubuntu 12.10 "virtuell" unbrauchbar

    
Andrew B 29.10.2012 15:58
quelle
7

Ich kenne die GUI-Einstellungen nicht, die benötigt werden, um Unity innerhalb einer VM nutzbar zu machen, aber ich weiß, wie man VMs unter Virtualbox, KVM und anderen abstimmt. Ich hatte nie Glück, dass Unity in jeder virtuellen Umgebung gut funktioniert. Habe mich nie zu sehr bemüht und bevorzuge entweder reines WM oder ein LXDE-basiertes DE.

Weitere detaillierte Einstellungen finden Sie hier: Pfandrecht

Zusammenfassung:

  • Die Vbox-Standardeinstellungen sind nicht gut für Ubuntu-Releases, die wie eine echte GPU aussehen.
  • Wenn Sie HDDs rotieren, ordnen Sie die gesamte virtuelle Festplatte vor. Auf SSDs ist das egal.
  • Ordnen Sie nur den Speicherplatz zu, den Sie benötigen. Bewahren Sie große Dateien außerhalb der 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. Überschreiten Sie RAM 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 des angezeigten vRAM
  • erhalten
  • Server-VMs sollten mit 9 MB vRAM bleiben; Verschwende es nicht.
  • Vermeiden Sie 2D- und 3D-Beschleunigungseinstellungen, bis alles andere wie gewünscht funktioniert. Ubuntu / Unity macht schlimme Dinge, wenn dies aktiviert ist. Es kann einen Core i7 auf den Boden bringen.

In den anderen Antworten gibt es viele Tipps zur GUI-Leistung. Diese sind wahrscheinlich auch gültig. Dieselben Tipps gelten für KVM, VM-Player und andere virtuelle Hypervisoren. Diese funktionieren auch für Server.

Viel Glück.

    
JohnP 10.02.2013 20:16
quelle
4

Ich hatte gute Ergebnisse, als ich von Unity zum Fallback GNOME wechselte. Sie können dies tun, indem Sie einfach GNOME-session-fallback vom Software-Center aus installieren und dann auf dem Anmeldebildschirm auswählen.

siehe: Pfandrecht für ein zufälliges detailliertes Howto

    
Nanne 29.10.2012 15:16
quelle
1

Um 3D unterstützt zu aktivieren, müssen Sie Linux-Header aktualisieren

$ uname -r
$ sudo apt-get install linux-headers-$(uname -r)
$ sudo apt-get autoremove
$ sudo apt-get install build-essential

Fügen Sie nun die iso-Datei von den Geräten ein und starten Sie die Installation manuell.

$ cd /media
$ ls
$ cd username
$ ls
$ cd VBOX*
$ ls
$ sudo ./VBoxLinuxAdditions.run

Fügen Sie vboxvideo in / etc / modules

ein
$ sudo nano /etc/modules

Fügen Sie "vboxvideo" am Ende der Datei hinzu

loop
lp
vboxvideo

Starten Sie den Computer neu

$ sudo reboot

Aktivieren Sie "Nicht Software gerendert" und "Unity 3D unterstützt" sind aktiviert oder nicht nach dem Neustart

$ /usr/lib/nux/unity_support_test -p

Als nächstes möchten Sie den Videospeicher erhöhen. Suchen Sie nach der .vbox-Datei

$ nano /home/username/VirtualBox VMs/ubuntu/ubuntu.vbox

Ersetzen

<Display VRAMSize="128" monitorCount="1" accelerate3D="true" accelerate2DVideo="false"/>

An

<Display VRAMSize="256" monitorCount="1" accelerate3D="true" accelerate2DVideo="false"/>

Quelle: Wie Sie die langsame Leistung beheben können ubuntu 13.04 läuft in der virtualbox

    
user223973 21.02.2014 03:58
quelle

Tags und Links