VirtualBox beschleunigen

Mr. Brooks

Lt. Commander
Registriert
Aug. 2011
Beiträge
1.441
Hi,

auf meinem Rechner läuft nur Linux, Windows 7 habe ich in einer virtuellen Maschine (VirtualBox) laufen für die wenigen Fälle in denen es keine passende Linux-Software gibt. Adobe Acrobat ist so ein Fall. Zwar geht auch die PDF-Erstellung unter Linux problemlos, das automatische Ausrichten leicht schief gescannter Dokumente und die Qualität der OCR-Erkennung des Text-Layers ist bei Acrobat aber deutlich besser. Bei größeren Sachen braucht Acrobat in der VM aber deutlich länger als es früher (auf der gleichen Hardware) unter einem richtig installiertem Windows brauchte.

Ich hatte mal irgendwo gelesen, dass es möglich ist eine VM so einzurichten, dass sie anstatt mit virtualisierter Hardware direkt auf die Hardware des Hosts zugreift. Ich muss ja manuelle einstellen wieviel RAM ich gebe, demnach ist das kein direkter Zugriff. Ich ist da ewas anderes gemeint? Könnte ich problemlos die ganzen 16GB an die VM geben oder wird dann das Linux instabil?

Mr. Brooks

edit
Die VM liegt derzeit auf einer HDD, das Windows lief früher von einer SSD. Evtl. würde es Sinn machen die VMs in einem Ordner auf einer SSD abzuspeichern? Ich hab noch eine zweite SSD verbaut, es müsste also nicht einmal die SSD sein, von der Linux bootet.
 
Mr. Brooks schrieb:
Könnte ich problemlos die ganzen 16GB an die VM geben oder wird dann das Linux instabil?

Dann wäre kein Platz mehr für den Host. Der braucht schon noch seine paar GB, je nach Distri. Alles, was an RAM noch frei ist, kannst du aber der VM zuweisen. Denke trotzdem nicht, daß das viel beschleunigen wird, solange dei VM vorher nicht auslagern mußte. Bei den zugewiesenen kernen sieht’s ähnlich aus, auch wnen ich bezweifle, daß Adobe das großartig parallelisiert hat. Da wird’s auf den Takt eines Kerns ankommen.
 
Moin, kenne zwar die Hardware nicht, aber hatte auch erfahren müssen, dass Virtualbox der VM standardmäßig nur einen CPU Kern zuweist. Nach Erhöhung der zugewiesenen Kerne liefen die VMs deutlich flüssiger.
 
  • Gefällt mir
Reaktionen: Pfandfinder
Andere Software als Virtualbox verwenden - VMware Workstation. Die non PRO ist für normal Sterbliche kostenlos.
Emulation ist besser und kann auch gescheite GPU Beschleunigung.
Virtualbox war halt geil, als es noch nicht zu Oracle gehört hat. Seitdem gehts nur abwärts.
Irgendwie wie mit allem was Oracle in die Finger kriegt..sei es Solaris, Mysql, usw..
 
Mr. Brooks schrieb:
Die VM liegt derzeit auf einer HDD, das Windows lief früher von einer SSD. Evtl. würde es Sinn machen die VMs in einem Ordner auf einer SSD abzuspeichern?
Ja, auf jeden Fall macht das Sinn. Ansonsten erstmal das mit den zugewiesenen Kernen checken (Standardeinstellung in virtualbox ist 1) und ruhig 8 GB RAM der VM zuweisen.
 
  • Gefällt mir
Reaktionen: bezelbube
Ich nutze auch Vbox. Die *.vhd liegt bei mir noch auf einer sata-hdd.
Vbox hat von mir in den Einstellungen 8 von installierten 32 GB Ram genehmigt bekommen.
Von meinen 12 Kerner sind der VM 4 Kerne zugebilligt.
Einen unterschied zwischen Host und VM ist bei mir fast nicht zu erkennen,wenn die VM läuft.
 
Virtual Box ist eher langsam, da du eh mit linux arbeitest würde ich mir mal kvm ansehen.
Ansonsten kannst du nicht allen Speicher der VM zuweisen. Dann fehlt es dem Host an Resourcen.
Und die VMs laufen deutlich besser wenn die virtuellen Laufwerke auf einer ssd liegen.
 
Es gibt auch noch andere Möglichkeiten zb musst mal googeln nach Virtual HHD Booten, so hatte ich das mal gemacht läuft auf jeden Fall schneller als mit VM VirtualBox aber ich glaube mit uefi Bios geht das nicht.
 
Ich denke eher, es dreht sich dabei um die entsprechende Option im BIOS. Zum einen gibt es im BIOS ja meistens 2 Optionen hinsichtlich VT: "Virtualization Technology" generell aktivieren bzw. deaktivieren und die zweite (wahrscheinlich gesuchte) Option ist die "VT-d" (Virtualization Technology for Directed I/O) bzw. "VT-x" und ermöglicht ein direktes Durchreichen von Befehlen an bzw. den direkten Zugriff des Gastsystems auf I/O- bzw. PCI-E-Geräte zur Steigerung der Performance aber auch der Zuverlässigkeit respektive Sicherheit (device isolation using hardware assisted remapping).
 
@ Helping_Hand

Ich habe einen AMD-Prozessor, hier nennt sich das vermutlich SVM (oder AMD-V). Im Bios gibt es nur die Möglichkeit SVM zu aktivieren - was es schon vorher war.

In VBox hab ich dann noch Einstellungen wie Hyper-V (eine Microsoft-Technik) und KVM gefunden. Ich vermute hier wäre KVM einzuschalten (was es bisher nicht war)

Die Kernel-based Virtual Machine (KVM; deutschBetriebssystem-Kern-basierte virtuelle Maschine“) ist eine Infrastruktur des Linux-Kernels zur Virtualisierung, die auf mit den Hardware-Virtualisierungstechniken von Intel (VT) oder AMD (AMD-V) ausgestatteten x86-Prozessoren sowie auf der System-z-Architektur lauffähig ist

Eine echte Verbesserung sehe ich aber nicht.
 
Mr. Brooks schrieb:
Ich hatte mal irgendwo gelesen, dass es möglich ist eine VM so einzurichten, dass sie anstatt mit virtualisierter Hardware direkt auf die Hardware des Hosts zugreift.
Du könntest die CPU-Kerne per Passthrough durchgeben, ob das viel ändert denk ich aber fast auch nicht. Wäre aber ggf. einen Versuch wert. Tutorials dazu findet man relativ schnell für KVM/QEMU. Wie das bei Virtualbox aussieht kann ich aber nicht sagen. Hab es aber zumindest schon mal geschafft aus Linux mit durchgeschleiften Kernen und GPU per PCI Passthrough meine bestehende Windows 10 Installation auf ner NVMe zu booten, das lief dann relativ gut für das, was ich ihr genehmigt habe :D
Mr. Brooks schrieb:
Die VM liegt derzeit auf einer HDD, das Windows lief früher von einer SSD. Evtl. würde es Sinn machen die VMs in einem Ordner auf einer SSD abzuspeichern?
Hier wird denke ich eher noch der Knackpunkt hängen, hau es mal auf ne SSD. Gib dazu (sofern Linux nicht nebenbei groß berechnet) n-2 Kerne an die VM, m-3GB RAM ebenso (es sei denn du hast da viel offen, dann lieber weniger bis es reicht) und dann sollte die Sache ggf. schon besser aussehen. Die volle Leistung wirst du aber nie erreichen, wenn die Software multithreadingoptimiert ist, da dir einfach die vollen Ressourcen fehlen.
Von welchen Unterschieden reden wir hier eigentlich effektiv?
 
Du hast es ja schon selbst erwähnt. Du brauchst eine SSD für Deine Windows VM.
Als Hypervisor würde ich Dir KVM empfehlen, dann kannst Du die SSD bzw. den Controller direkt an die VM durchreichen, was Dir in dem Fall quasi native Performance bringt.
Wenn Du insgesamt 16GB Ram im System hast, würde ich nicht über 12GB für die VM gehen, da Dein Linux ja auch noch atmen muss. Ich nehme an, dass Dein Linux ja auch einen Windowmanager hat und nicht nur konsolenbasiert ist.
 
Y-Chromosome schrieb:
dann kannst Du die SSD bzw. den Controller direkt an die VM durchreichen

Muss ich das irgendwo konkret einstellen oder wird das quasi automatisch schon so gemacht, wenn ich KVM einstelle?

Die SSD hat schon eine spürbare Beschleunigung gebracht, der Rest eher nicht.
 
Das geht bei der Erstellung der VM oder nachträglich z.B. über den Virt-Manager.
Selbst wenn Du es nicht direkt durchreichst, solltest Du die virtuelle Partition an einem Virtio Controller hängen haben.

Die optimale Lösung für Virtio ist folgende:
1. Die virtuelle Festplatte als "SCSI" Datenträger einbinden.
2. Einen SCSI Controller der VM hinzufügen und dann in den Einstellungen von "Hypervisor Standard" auf VirtIO Scsi umstellen.

Analog verhält es sich übrigens auch mit der Netzwerkkarte.
Hier musst Du unter "NIC" das Gerätemodell auf virtio setzen.

Es ist noch anzumerken, dass Du natürlich dann die Virtio Treiber bei der Installation einbinden musst.
Die gibt es oft im OS Repository oder als ISO zum Download bei Fedora.
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/virtio-win.iso

Bei der Installation von Windows musst Du dann Treiber nachladen.
 
Mr. Brooks schrieb:
Windows 7 habe ich in einer virtuellen Maschine (VirtualBox) laufen für die wenigen Fälle in denen es keine passende Linux-Software gibt. Adobe Acrobat ist so ein Fall.
Virtualisierung sollte immer eine Notlösung sein. Sprich: Wenn es nicht anders geht.
Wenns darum geht, Windows-Programme auf Nicht-Windows-Plattformen auszuführen, sollte man zunächst Wine probieren.

Mr. Brooks schrieb:
Adobe Acrobat ist so ein Fall.
https://appdb.winehq.org/objectManager.php?sClass=application&iId=847
 
Zurück
Oben