Hallo,
besteht die Möglichkeit einzelne Cores eines Quadcore Hostsystems gezielt bestimmten VM's zuzuweisen?
Falls nicht in dieser Version in welcher sonst (Server 2 ?)
Beispiel VM01 soll Core #0, VM02 Core #1 benutzen.
Die Foren-SW läuft ohne erkennbare Probleme. Sollte doch etwas nicht funktionieren, bitte gerne hier jederzeit melden und wir kümmern uns zeitnah darum. Danke!
Core(s) gezielt einer VM zuweisen bei Quadcore-Host ?
-
- King of the Hill
- Beiträge: 13649
- Registriert: 01.10.2008, 12:54
- Wohnort: laut USV-Log am Ende der Welt...
Wie ich schon mal vor längerem geschrieben hatte, kommt es da auf die Intelligenz der Win-Version an. Die Anwendung bekommt diese Info eigentlich nicht mitgeteilt, auf welchem Kern sie vorher lief und es interessiert sie auch nicht weiter. Im Normalfall wird mehrmals pro Sekunde zwischen den Kernen umgeschaltet und damit eine optimale Auslastung aller Einheiten generiert, welche im Endeffekt auch einen "Hotspot" auf der CPU durch einseitige Belastung verhindert. Leider ist dies auf Intel Quad-CPUs mit Ausnahme der Core i7/i5/i3-Reihe und aller AMD-Quads (also aller native Quads) nicht von Vorteil, da die beiden Dualcores aller Quads mit FSB zwar auf einem Die sitzen und dennoch nur über den vergleichsweise lahmen Frontsidebus (1066/1333/1600) kommunizieren. Wenn also das OS beschließt von Kern1 auf Kern4 zu switchen, müssen alle CPU-Register zwischen beiden Kernen über den FSB geschaufelt werden. Wie hoch die Verluste dadurch genau sind, müßte man mal Benchen... Bei 50 Kernwechseln die Sekunde würde ich aber von 10-20% Verlust reiner Rechenleistung ausgehen, dazu kommt dann die noch lahmere Speicheranbindung per FSB.
Allerdings tritt im Normalfall einer VM auch keine 24/7-Dauerlast auf, es sei denn du läßt Boinc oder einen sonstigen DC-Clienten laufen
Allerdings tritt im Normalfall einer VM auch keine 24/7-Dauerlast auf, es sei denn du läßt Boinc oder einen sonstigen DC-Clienten laufen

zB 2 Kerne hatte ich früher mal im Server1 zugeordnet
in *.vmx
Problem waren füher die Hyperthread-Kerne, da die Zähl-Reihenfolge unter Windows zu beachten ist.
zb. Dual Prozessor mit HT: phys / phys / HT / HT
ggf. einfach mal einen ct-Mandelbrot im Taskmanger einen Kern zuordnen. Dann merkt man den Unterschied.
http://kb.vmware.com/selfservice/micros ... 2025737690
in *.vmx
Code: Alles auswählen
numvcpus = "2"
processor0.use = TRUE
processor1.use = TRUE
processor2.use = FALSE
processor3.use = FALSE
Problem waren füher die Hyperthread-Kerne, da die Zähl-Reihenfolge unter Windows zu beachten ist.
zb. Dual Prozessor mit HT: phys / phys / HT / HT
ggf. einfach mal einen ct-Mandelbrot im Taskmanger einen Kern zuordnen. Dann merkt man den Unterschied.
http://kb.vmware.com/selfservice/micros ... 2025737690
-
- King of the Hill
- Beiträge: 13649
- Registriert: 01.10.2008, 12:54
- Wohnort: laut USV-Log am Ende der Welt...
Jaja, die Zählreihenfolge bringt das nächste Problem ans Licht. Auch diese läßt sich mit normalen (dem Win-OS beiliegenden) Mitteln leider nicht feststellen. Wie das OS welche Kerne wie einloggt, hält es schön unter Verschluß. Ein P4 mit HT auf einem Dual-Sockelboard wird zum Beispiel unter Windows völlig anders eingeloggt als der Core i7 und um die Verwirrung komplett zu machen, wird derselbe Core i7 unter MacOS-X dann völlig konfus eingeloggt. Das Ganze geht dann sogar soweit, daß sich das je nach BIOS-Version sogar ändert.
Welche CPU hast du eigentlich onboard?
Welche CPU hast du eigentlich onboard?
-
- King of the Hill
- Beiträge: 13649
- Registriert: 01.10.2008, 12:54
- Wohnort: laut USV-Log am Ende der Welt...
Herbert hat geschrieben:Eine manuelle Zuteilung macht heute keinen Sinn mehr. Früher musste es teilweise eingesetzt werden, um Timing-Probleme bei VMs zu umgehen. Betroffen waren Server mit mehreren CPU Boards, z.B. die damalige IBM X-Series.
Gruss
Herbert
Das sehe ich als Nutzer des 24/7-Vollgasbetriebes logischerweise anders. Bei allen noch auf einem FSB-setzenden Quads (Q6/Q8/Q9-Reihe) reagieren die VMs wesentlich gleichmäßiger und bekommen dann gleichzeitig die maximal mögliche Rechenzeit ohne sinnlose Transfers zwischen den zusammengepappten Dualcore-Hälften. Ein großer L2-Cache hilft die Lage nur etwas zu entspannen, besonders wenn gleichzeitig eine hohe Auslastung der VM-RAMs vorliegt. Das es trotzdem Verluste gibt, ist schon alleine durch das Host-OS bedingt. Aber man muß ja nicht noch mehr CPU-Leistung dadurch verbraten.

Wie schon einmal weiter oben gesagt, ist das nur im Volllastbetrieb wichtig oder wenn man die Leistung absolut maximieren will.
Wie schon einmal weiter oben gesagt, ist das nur im Volllastbetrieb wichtig oder wenn man die Leistung absolut maximieren will.
Einverstanden, wenn Du dann vorher weisst, welche VMs wieviel Last ziehen - oder die Einzellast auf eine CPU beschränken willst. Ein Transfer bei Überlast auf einen anderen Kern ist dann allerdings nicht mehr möglich. Gerade aus derartigen Lastverteilmechanismen zieht VMware Vorteile.

Gruss
Herbert
Zurück zu „VMserver 1 und GSX“
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste