Bester CPU Typ für Windows VMs in Proxmox

Don-DCH

Commander
Registriert
Aug. 2009
Beiträge
3.068
Guten Nachmittag zusammen,

ich habe einen Dell T20 mit Xeon 1225 V3 auf diesem ich Proxmox installiert habe. Soweit funktioniert auch alles gut.

Mein Hauptverwendungszweck sind virtuelle Maschinen mit Windows 10 und 11.
Ich hatte jetzt ein bisschen getestet bezüglich der Einstellungen für die VMs und auch einige best Practice Guides gefunden, nur frage ich mich was beim Thema CPU Typ die beste Wahl wäre?

Zum einen gibt es ja den Typ Host, welcher die CPU des Hosts soweit ich weiß mehr oder weniger weitergibt. Dies ist auch sehr performant. Nur frage ich mich, ob es gut geht, wenn ich in Zukunft einen anderen Virtualisierungshost mit Beispielsweise Ryzen 7000 verwende? Ein Wechsel ist da vielleicht nicht so gut oder?

Standardmäßig wird die VM mit dem CPU Typ x86-x64-v2-AES erstellt. Damit ist die VM absolut langsam und frisst wahnsinnig viel Ressourcen.

Empfehlungen gibt es noch Richtung kvm64, max und quemu 64

Letzteres habe ich mal getestet und fande es auf den ersten Blick recht gut.

Ich plane kein Cluster oder Live Migration zwischen Systemen mit verschiedenen CPUs. Die Frage ist nur wenn ich jetzt HOST nehme ob das die beste Wahl ist in hinblick auf zukünftige Migrationen oder ob es da zu Problemen kommen kann?

Anbei ein kleiner Auszug der möglichen CPUs

1701784713980.png


Über Empfehlungen undErfahrungswerte würde ich mich sehr freuen!
Welchen CPU Typ würdet Ihr einsetzen? Lieber QUEMU um bei einer Migration zu einem AMD System keine Probleme zu haben (Und wenn welchen Quemu) oder würdet Ihr immer Host nehmen?

Viele Grüße
 
Nach meinen Kenntnisstand dürfte für deinen Anwendungsfall "host" die beste Wahl sein.
Alle anderen dürften nur relevant sein, wenn du Cluster mit Live-Migration nutzen willst.

Hintergrund ist, dass es Software/Betriebssysteme nicht erwartet, dass sich die Features einer CPU (Befehlssätze, Hardwarebeschleunigung für Verschlüsselung, u.s.w.) einfach mal mitten im Betrieb ändern. Aber genau dass würde passieren bei einer Live-Migration bzw. bei Hibernation (einfrieren/snapshotten) und wieder fortsetzen. Ein wechsel der CPU ist kein Problem, so lange man die VMs vorher herunterfährt und dann nach dem CPU-Wechsel wieder startet.

Die Optionen beschneiden die CPU künstlich um zu gewährleisten dass alle Cluster-Hosts (auf denen die VM laufen könnte) die gleichen CPU-Features der VM anbieten und es daher nicht zu einer Veränderung kommt.
 
  • Gefällt mir
Reaktionen: guzzisti, konkretor, AB´solut SiD und 6 andere
Vielen herzlichen Dank für deine schnelle und ausführliche Antwort!

Das wäre ja super, damit hätte ich die beste Perofrmance wenn ich Host nehme. Die Performance ist mir auch am wichtigsten. Allerdings soll es natürlich auch keinerlei probleme geben wenn ich den T20 mit Intel CPU auch mal austausche gegen ein AMD System. Das heißt bei einem Austausch könnte ich die VM herunterfahren und einfach rüberkopieren oder muss ich da über ein Backup gehen?

Viele Grüße
 
Wenn du die VM herunterfährst, sollte ein CPU Tausch keine großen Probleme bereiten. Die Optionen, die du da als CPU-Typ auswählen kannst, sind wie @FlaTLin3 schon erläutert hat, hauptsächlich für Live-Migrationen relevant.

 
  • Gefällt mir
Reaktionen: konkretor und Don-DCH
Die Einstellung wird dann relevant, wenn man die VM zum anderen Proxmox Host mit einer anderen CPU umziehen möchte. Bei der
Code:
host
Auswahl, kann es hier zu Problemen kommen. Für dein Fall aber sollte
Code:
host
die bessere Wahl sein.
 
oicfar schrieb:
Die Einstellung wird dann relevant, wenn man die VM zum anderen Proxmox Host mit einer anderen CPU umziehen möchte. Bei der
Genau darum geht es mir, wenn ich jetzt host wähle und von meinem Intel System auf ein AMD System in Zukunft wechsle, wo können dann die Probleme genau kommen?

oicfar schrieb:
die bessere Wahl sein.
Hmm jetzt muss ich aber nochmal nachfragen, wenn es Probleme mit host geben kann bei einem wechsel von Intel zu AMD, warum ist host trotzdem die beste Wahl?
 
Don-DCH schrieb:
Genau darum geht es mir, wenn ich jetzt host wähle und von meinem Intel System auf ein AMD System in Zukunft wechsle, wo können dann die Probleme genau kommen?
Naja ... wenn du jetzt Host nimmst und Intel hast, dann werden Intel Treiber installiert. Wenn du dann zu AMD wechselst, dann weiß ich nicht, wie sich dann Windows verhalten wird.

Du musst dann schauen welche Features du brauchst um auf der sicheren Seite zu sein.

Das

https://qemu-project.gitlab.io/qemu/system/qemu-cpu-models.html

ist die Übersicht für die Entscheidung.

Hier: https://forum.proxmox.com/threads/cpu-type-host-vs-kvm64.111165/post-524336
Don-DCH schrieb:
Hmm jetzt muss ich aber nochmal nachfragen, wenn es Probleme mit host geben kann bei einem wechsel von Intel zu AMD, warum ist host trotzdem die beste Wahl?
;) Ich habe in deinem initialen Post das mit dem Wechsel überlesen.
 
  • Gefällt mir
Reaktionen: Tanzmusikus
oicfar schrieb:
Naja ... wenn du jetzt Host nimmst und Intel hast, dann werden Intel Treiber installiert. Wenn du dann zu AMD wechselst, dann weiß ich nicht, wie sich dann Windows verhalten wird.
Hmm, gibt es für eine CPU auch Treiber? Ich dachte bei der x86 Architektur gibt sich das nicht viel bzw. es gibt lediglich Chipsatz Treiber?
Der Chipsatz wäre ja dann weiterhin pc-q35-8.1?

Die Links schaue ich mir mal an, danke dir.

oicfar schrieb:
;) Ich habe in deinem initialen Post das mit dem Wechsel überlesen.
Ok, das heißt aber host wäre nicht die bessere Wahl oder wie meintest du das genau :)
 
Don-DCH schrieb:
Hmm, gibt es für eine CPU auch Treiber? Ich dachte bei der x86 Architektur gibt sich das nicht viel bzw. es gibt lediglich Chipsatz Treiber?
Ja. Ich weiß aber nicht, wie sich Windows verhalten würde, wenn du die SSD mit Windows von einem Intel System in ein AMD System einbaust.
Don-DCH schrieb:
Der Chipsatz wäre ja dann weiterhin pc-q35-8.1?
Da müsste ich mich einlesen.
Don-DCH schrieb:
Die Links schaue ich mir mal an, danke dir.


Ok, das heißt aber host wäre nicht die bessere Wahl oder wie meintest du das genau :)
Host würde ich nehmen, wenn ich keine Migration der VM auf andere Hardware vornehme.
 
  • Gefällt mir
Reaktionen: Don-DCH
oicfar schrieb:
Ich weiß aber nicht, wie sich Windows verhalten würde, wenn du die SSD mit Windows von einem Intel System in ein AMD System einbaust.
I.d.R. ist ein Wechsel auf einen Prozessor anderen Herstellers problemfreier als innerhalb des Herstellers auf ein ähnliches Prozessor-Modell. Dies ist jedenfalls meine Erfahrung mit u.a. Win7/10.
Bei WinXP sind teils graviende Einstellungen vorzunehmen (z.B. SATA-Treiber in der Registry ändern).

Die alten Treiber können vor dem Wechsel oder auch danach deinstalliert werden.
Mit DriverStoreExplorer könnte man dann noch zusätzlich Reste entfernen.
Am Besten wäre es natürlich die Deinstallation/Entfernung vor dem Wechsel vorzunehmen.
 
  • Gefällt mir
Reaktionen: Don-DCH und oicfar
Ich erwarte keine Probleme beim CPU wechsel.

Die "Treiber" für die CPUs sind weitgehend Bestandteil der Betriebssysteme.
Die detektieren bei jedem Start erneut, was die CPU kann und nutzen (sofern von CPU angeboten und vom Betriebssystem unterstützt) die angebotenen CPU-Features. Wenn das Betriebssystem ein Feature nicht kennt, dann nutzt es das einfach nicht. Das kostet natürlich etwas Performance, sofern man eine Software nutzt die davon profitieren würde.

Ein extra Treiber für die CPU ist eigentlich nicht erforderlich. Es mag ausnahmen geben, die ich aber im Virtualisierungs-Kontext als vernachlässigbar halte.
Mit fällt dazu eigentlich nur die Energieprofile für die frühen Ryzen-Prozessoren ein, welche für bessere Leistung (durch besseres Prozess-Scheduling) sorgen sollten. Aber ohne funktionierte ein Windows auch wunderbar. Sowie zuletzt die Unterscheidung von P(erformance)- und E(fficency)-Cores bei Intel, die bei Windows erst ab 11 (bzw. Server 2022) optimal genutzt werden. Beides hat mit optimierten Prozess-Scheduling zu tun um die bestmögliche Performance (für einen normalen/gaming/server Computer) zu erreichen. Genau an der Stelle mischt aber der Hypervisor (der die CPUs der VMs verwaltet) selbst mit.

Proxmox (genauer das genutzte KVM-Hypervisor zusammen mit QEMU) simuliert einen PC mit q35 oder i440fx Chipsatz. Die "Treiber" bzw. Unterstützung bringen die üblichen Betriebsysteme von selbst mit. Hier ändert sich nichts für die VM, wenn man die CPU tauscht. Gleiches gilt für die restliche virtuelle Hardware.

Die Auswahl einer Version (für den jeweligen Chipsatz in Proxmox) hat einfluss wie die virtuelle Hardware zusammengesteckt wird. Hier ändern sich gelegentlich Details, wenn man eine andere Verson eintellt. Dass kann z.B. zur folge haben, dass die Grafikkarte in einem anderen virtuellen PCI(-Express)-Steckplatz stecken könnte. Das kann dann auswirkungen im Betriebsystem haben. z.B. wird die Hardware womöglich als "neue Hardware" detektiert und es kann dann eine neue Windows-Aktivierung erforderlich sein. Aber neue/andere Treiber sind da trotzdem nicht nötig.
 
  • Gefällt mir
Reaktionen: konkretor und Don-DCH
oicfar schrieb:
Ja. Ich weiß aber nicht, wie sich Windows verhalten würde, wenn du die SSD mit Windows von einem Intel System in ein AMD System einbaust.
Hmm, ja das ist die Frage, nicht das es dann zu Problemen in Zukunft führt, wenn Windows da einen Hardwarewechsel erkennt.
oicfar schrieb:
Host würde ich nehmen, wenn ich keine Migration der VM auf andere Hardware vornehme.
Ok, also lieber kvm64,max oder quemu 64?


Tanzmusikus schrieb:
I.d.R. ist ein Wechsel auf einen Prozessor anderen Herstellers problemfreier als innerhalb des Herstellers auf ein ähnliches Prozessor-Modell. Dies ist jedenfalls meine Erfahrung mit u.a. Win7/10.
Ah ok, interessant, das hätte ih nicht gedacht! Habe gedacht wenn man im Intel Universum bleiben würde gäbe es wenig bis keine Probleme aber interessant das du ganz andere Erfahrungen berichten kannst. Da fehlen mir Erfahrungswerte. Meinst du so einen Wechsel mit virtualisierungsebene oder windows nativ auf der Hardware?

Tanzmusikus schrieb:
Bei WinXP sind teils graviende Einstellungen vorzunehmen (z.B. SATA-Treiber in der Registry ändern).
Ok, das habe ich nicht vor zu verwenden, da nur neuere Software eingesetzt wird. Win 10 ist das mindeste eher Windows 11 :)




@FlaTLin3
Vielen herzlichen Dank dir für deine ausführliche Rückmeldung!
FlaTLin3 schrieb:
Ich erwarte keine Probleme beim CPU wechsel.
Das wäre natürlich super, da host am umkompliziertesten ist und eine super Performance bietet :)

FlaTLin3 schrieb:
Proxmox (genauer das genutzte KVM-Hypervisor zusammen mit QEMU) simuliert einen PC mit q35 oder i440fx Chipsatz. Die "Treiber" bzw. Unterstützung bringen die üblichen Betriebsysteme von selbst mit. Hier ändert sich nichts für die VM, wenn man die CPU tauscht. Gleiches gilt für die restliche virtuelle Hardware.
Genau das habe ich auch gedacht, dass es zu Problemen führt, wenn man den Chipsatz wechselt. Aber genau das wäre ja garnicht der Fall :)
 
Don-DCH schrieb:
Das wäre natürlich super, da host am umkompliziertesten ist und eine super Performance bietet :)
Auf welche Performance beziehst du dich genau?
 
Don-DCH schrieb:
Ah ok, interessant, das hätte ih nicht gedacht! Habe gedacht wenn man im Intel Universum bleiben würde gäbe es wenig bis keine Probleme aber interessant das du ganz andere Erfahrungen berichten kannst. Da fehlen mir Erfahrungswerte. Meinst du so einen Wechsel mit virtualisierungsebene oder windows nativ auf der Hardware?
Ich beziehe mich auf normale "BareMetal"-Hardware. Allerdings ist das bei VMs beschränkt ähnlich.
Zumindest Prozessor, Chipsatz und Datenträger könnten per "Host" ggf. anders angebunden sein.

Es kann auch beim Wechsel von AMD zu Intel (oder umgekehrt) zu Problemen kommen, aber i.d.R. nur durch sehr hardware-nahe Treiber (z.B. RAID, NVMe, ggf. auch SATA oder SAS). Deshalb diese vorher deinstallieren.
SATA sollte auch per VM mittlerweile unkompliziert sein.
NVMe-Treiber könnten allerdings direkt mit der CPU verbunden sein, welche per "Host" herausgeführt werden.

Das alles sollte Dir nicht zuviel Sorgen bereiten, denn Du kannst ja jederzeit den Modus auf KVM oder QEMU in Proxmox ändern, bevor Du die VM kopierst/exportierst.

Ein Backup (z.B. auf der alten Hardware) bereithalten wäre in jedem Fall eines Umzuges wäre empfehlenswert.
Im KVM- oder QEMU-Modus sollte sich die VM quasi problemlos exportieren lassen.



Ein Wechsel innerhalb des selben Herstellers kann allerdings manchmal Probleme bereiten (bei Virtualisierung vermutlich deutlich weniger), wenn die Hardware sehr ähnlich ist. Ähnliche aber inkompatible Treiber könnten erfolglose Starts verursachen, wenn diese Treiber vorher nicht entfernt wurden. (Muss aber nicht sein.)

Ich habe jahrelang Erfahrungen mit Baremetal-"Umzügen" gesammelt.
Mit VirtualBox, Hyper-V & Proxmox habe ich zwar einige Monate Erfahrung, aber nicht mit "Umzügen".
 
  • Gefällt mir
Reaktionen: Don-DCH
oicfar schrieb:
Auf welche Performance beziehst du dich genau?
Auf die Performance der VM, wenn ich den CPU Typ "host" gewählt habe.


Tanzmusikus schrieb:
NVMe-Treiber könnten allerdings direkt mit der CPU verbunden sein, welche per "Host" herausgeführt werden.
Tatsächlich habe ich so gut wie alle VMS auf meinem LVM-Thin pool auf meiner NVME SSD

Tanzmusikus schrieb:
Das alles sollte Dir nicht zuviel Sorgen bereiten, denn Du kannst ja jederzeit den Modus auf KVM oder QEMU in Proxmox ändern, bevor Du die VM kopierst/exportierst.
Hmm, das stimmt. Das heißt ich kann wenn in Zukunft neue Hardware kommt die VM erstmal rüberkopieren und probieren ob alles startet und reibungslos funktioniert, ich denke wenn auf Anhieb alles funktioniert sollte später ja nichts mehr kommen, wenn dann kracht es direkt beim Start der VM nehme ich an?


Tanzmusikus schrieb:
Ein Backup (z.B. auf der alten Hardware) bereithalten wäre in jedem Fall eines Umzuges wäre empfehlenswert.
Im KVM- oder QEMU-Modus sollte sich die VM quasi problemlos exportieren lassen.
Da möchte ich jetzt bald den Proxmox Backup Server hernehmen, auf diesem ich meine VMs sichere, so dass bei einer Fehlkonfiguration noch das Backup da ist.
 
  • Gefällt mir
Reaktionen: Tanzmusikus
"Host" soll am performantesten sein, gerade wenn man die ganzen Virtualisierungsfunktionen im BIOS aktiv hat.
 
  • Gefällt mir
Reaktionen: Tanzmusikus
Genau.
Ist ja quasi nur durchgereicht ... und keine Emulation irgendeines Prozessors dazwischen.


Don-DCH schrieb:
wenn dann kracht es direkt beim Start der VM nehme ich an?
Jep. Alles "unrunde" danach ließe sich wahrscheinlich durch entsprechende Einstellungen oder Treiber-De-/Installationen regeln.
 
Zurück
Oben