Moin!
Ich habe hier an einigen Stellen gelesen, dass man eine VM an einen CPU-Kern binden kann und dieses auch empfohlen wird! Meine Frage wäre nun, ob dies einen bestimmten Leistungs-/Performancegewinn mit sich bringt?!
Meine Konfiguration ist ein Core2Quad 2,89GHz, 12GB RAM und als Storage nutze ich ein SAS RAID0 (kein Produktivsystem, meine "Spielwiese" zu Hause) - es laufen immer so 2-3 Gäste (2 WinXP mit 512MB & ein W2k3 mit 4GB RAM)!
In einem Beitrag habe ich gelesen, dass man diese Anpassung in der vmx der jeweiligen VM vornehmen muss, so etwa:
processor0.use = "FALSE"
processor1.use = "TRUE"
Wenn ich nun einer VM 2 vCPU zuteile, müßte ich diese dann auch an 2 Kerne festpinnen, sofern diese Option wirklich was bringt?
Bin für Tipps sehr dankbar!
Gruß!
Michael
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!
VM an einen Kern binden
-
mister-man
- Profi
- Beiträge: 778
- Registriert: 17.10.2007, 14:01
- Wohnort: Meppen
continuum hat geschrieben:und dieses auch empfohlen wird!
Wer hat das gesagt ?
Also da kann ich nur von abraten - ich wuerde das VMware selber ueberlassen - ist auch viel weniger Aufwand
Unter anderem in diesem Beitrag wird das bei Core2Quad von Dayworker empfohlen (wenn ich das nicht falsch verstanden habe):
http://vmware-forum.de/viewtopic.php?t=14889
Hier steht auch was drüber, bezieht sich aber auf die Version 1.x:
http://wansys.de/kb/kb8002/kb8002.html
Gruß!
Michael
-
Dayworker
- King of the Hill
- Beiträge: 13657
- Registriert: 01.10.2008, 12:54
- Wohnort: laut USV-Log am Ende der Welt...
Also mit dem "Festpinnen" an einen bestimmten Kern, verhält es sich folgendermaßen.
AMD und Core i7 sind native Quadcores und die Core2Quad sind 2 Dualcores zusammengepappt in ein Gehäuse. Und genau da liegt das Problem.
Solange die VM's nur auf einem Dualcore (Core2Quad-Hälfte) switchen, entstehen keine größeren Wartezeiten. Die Kerne sind ja über die Fullspeed-Caches mit ihren entsprechenden Zugriffzeiten verbunden. Windows als Host-OS ist aber leider doof oder es wurde keine Logik dafür integriert und behält ein Programm=VM nicht immer auf dem gleichen Kern, sondern verschiebt es mal auf den einen mal auf den anderen Kern (Stichwort Round-Robin-Scheduling). Jetzt macht Windows dieses auch auf jedem Quadcore und hier gibt es beim Core2Quad den Performance-Verlust. Die beiden Dualcores sind nur über den langsamen FSB der gesamten CPU (also den Arbeitsspeicher
) miteinander verbunden. Das sind maximal FSB1600 beim QX9770, die Q8/9000 haben den FSB1333 und die Q6000 sind sogar nur mit FSB1066 angebunden.
Linux als Host-OS sollte da wesentlich intelligenter Agieren, mir fehlen dazu aber Vergleiche.
Aus diesem Grund kann die Effizienz der Intel Core2Quad auch nie die hohen Werte der AMD-Quads allgemein und auch nicht des neuen Core i7 erreichen. Mit anderen Worten wird ein Core2Quad immer langsamer umso höher die Anzahl der notwendigen Zugriffe auf den Arbeitsspeicher ist.
[edit]
Aus genau diesem Grund hatte AMD die Core2Quads von Intel auch mal als Mogelpackung tituliert.
AMD und Core i7 sind native Quadcores und die Core2Quad sind 2 Dualcores zusammengepappt in ein Gehäuse. Und genau da liegt das Problem.
Solange die VM's nur auf einem Dualcore (Core2Quad-Hälfte) switchen, entstehen keine größeren Wartezeiten. Die Kerne sind ja über die Fullspeed-Caches mit ihren entsprechenden Zugriffzeiten verbunden. Windows als Host-OS ist aber leider doof oder es wurde keine Logik dafür integriert und behält ein Programm=VM nicht immer auf dem gleichen Kern, sondern verschiebt es mal auf den einen mal auf den anderen Kern (Stichwort Round-Robin-Scheduling). Jetzt macht Windows dieses auch auf jedem Quadcore und hier gibt es beim Core2Quad den Performance-Verlust. Die beiden Dualcores sind nur über den langsamen FSB der gesamten CPU (also den Arbeitsspeicher
Linux als Host-OS sollte da wesentlich intelligenter Agieren, mir fehlen dazu aber Vergleiche.
Aus diesem Grund kann die Effizienz der Intel Core2Quad auch nie die hohen Werte der AMD-Quads allgemein und auch nicht des neuen Core i7 erreichen. Mit anderen Worten wird ein Core2Quad immer langsamer umso höher die Anzahl der notwendigen Zugriffe auf den Arbeitsspeicher ist.
[edit]
Aus genau diesem Grund hatte AMD die Core2Quads von Intel auch mal als Mogelpackung tituliert.
-
irix
- King of the Hill
- Beiträge: 13059
- Registriert: 02.08.2008, 15:06
- Wohnort: Hannover/Wuerzburg
- Kontaktdaten:
Also uns haben sie was anderes erzaehlt. VMware wuerde alle 20ms automatisch den Core wechseln sofern man nichts anderen definiert.
Wie eine Single vCPU Windows VMs ein Problem mit den Cores haben kann ist mir schleierhaft. Was der Scheduler innerhalb seiner einen CPU da treibt ist doch unwichtig. Ganz anders mag es aussehen wenn man 4 vCPUs definiert hat.
Das die AMDs so gut sind bei der virtualisierung liegt an der viel hoeheren Speicherbandbreite welche sie hatten ... bzw den Vorsprung.
Edit:
Ich sehe gerade das wir hier bei Vmware Server 1/2 sind. Nun verstehe ich das auch mit dem Windows... das hier als Host agiert. Das ein Scheduler auf einem SMP Server oftmals ganz unverstaendiliche Dinge tue sehe ich beiner meiner 32 Sockel Kiste. Mir ist es manchmal ein Raetsel warum der Task ausgerechnet auf der CPU laufen muss welche am meisten HOPs braucht zum Speicher.
Gruss
Joerg
Wie eine Single vCPU Windows VMs ein Problem mit den Cores haben kann ist mir schleierhaft. Was der Scheduler innerhalb seiner einen CPU da treibt ist doch unwichtig. Ganz anders mag es aussehen wenn man 4 vCPUs definiert hat.
Das die AMDs so gut sind bei der virtualisierung liegt an der viel hoeheren Speicherbandbreite welche sie hatten ... bzw den Vorsprung.
Edit:
Ich sehe gerade das wir hier bei Vmware Server 1/2 sind. Nun verstehe ich das auch mit dem Windows... das hier als Host agiert. Das ein Scheduler auf einem SMP Server oftmals ganz unverstaendiliche Dinge tue sehe ich beiner meiner 32 Sockel Kiste. Mir ist es manchmal ein Raetsel warum der Task ausgerechnet auf der CPU laufen muss welche am meisten HOPs braucht zum Speicher.
Gruss
Joerg
-
mister-man
- Profi
- Beiträge: 778
- Registriert: 17.10.2007, 14:01
- Wohnort: Meppen
Um die diskussion mal zu beenden, muss ich sagen, das ich die Erläuterung von Daywalker sehr gut finde, und ohne nachzuforschen sie auch als logisch ansehe (***** Sterne)
Allerdings lohnt es sich nicht darüber nachzudenken, denn das CPU Management des des Betriebssystems arbeitet sehr gut (Linux Host), zu Windows kann ich leider nichts sagen, dort fehlt mir die erfahrug. Und ich denke mal eine dynamische CPU verteilung, schafft auch Sparpotenzial, denn VMs die gerade wenig ausgelastet sind, können VMs rechenzeit abgeben, die gerade über Ihre grenze Hinauswachsen bei einer Festpinnung.
Aber dies ist nur eine meinung, ich denke wir sind uns alle einig, das V-Server größere schwachstellen und leistungsfresser haben (z.B. I/O Last, Festplatten).
Dort kann man durch Optimirung sehr viel mehr erreichen als man meint (Thema Swapping etc.)
MfG
Allerdings lohnt es sich nicht darüber nachzudenken, denn das CPU Management des des Betriebssystems arbeitet sehr gut (Linux Host), zu Windows kann ich leider nichts sagen, dort fehlt mir die erfahrug. Und ich denke mal eine dynamische CPU verteilung, schafft auch Sparpotenzial, denn VMs die gerade wenig ausgelastet sind, können VMs rechenzeit abgeben, die gerade über Ihre grenze Hinauswachsen bei einer Festpinnung.
Aber dies ist nur eine meinung, ich denke wir sind uns alle einig, das V-Server größere schwachstellen und leistungsfresser haben (z.B. I/O Last, Festplatten).
Dort kann man durch Optimirung sehr viel mehr erreichen als man meint (Thema Swapping etc.)
MfG
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 11 Gäste
