Das Forum wurde aktualisiert. Wurde höchste Zeit. Wenn etwas nicht funktioniert, bitte gerne hier jederzeit melden.

Erfahrungen gesucht: VM mit Multi-Core vCPU

Moderatoren: Dayworker, continuum, Tschoergez, irix

Member
Beiträge: 101
Registriert: 17.06.2005, 09:39

Erfahrungen gesucht: VM mit Multi-Core vCPU

Beitragvon DschingisKarn » 07.06.2012, 20:13

Hallo zusammen

Da wir ja nun bequem über die GUI entscheiden können wie die CPU Konfiguration unserer VMs aussehen soll stellt sich die Frage, was ist optimal?
Sicherlich gibt es Anwendungen die besser mit Multi-CPU zurecht kommen und welche die lieber MMulti-Core (Multithreading) haben möchten ... nur welche? Fragt man seinen Kunden wofür seine Anwendung optimiert wurde bekommt man meist nur Fragezeichen in den Augen zu sehen.

Meine Frage, was habt Ihr mit welchen Anwendungen für erfahrungen?

Bsp.:
Wir nehmen eine VM mit 8vCPUen.

Mögliche Konfigurationen:
8vCPUen mit je 1 vCore
4vCPUen mit je 2 vCore
2vCPUen mit je 4 vCore
1vCPUen mit 8 vCore

Nun nehmen wir verschiedene Anwendungen ... welche Erfahrungen habt Ihr?

- MS SQL
- Oracle
- Citix
- Exchange
- ... ?

Wenn hier eine schöne Erfahrungsliste herauskommen würde, quasi eine "Best practice" fände das sicher jeder nicht schlecht.

Benutzeravatar
Guru
Beiträge: 3129
Registriert: 22.02.2008, 20:01
Wohnort: Hessen

Beitragvon PeterDA » 07.06.2012, 20:33

Hi,
meiner Erahrung nach spielt das keine Rolle. Ist vielmehr nur etwas Lizenz und Software gehampelt.

Gibt Software die nach CPUs lizensiert wird. Packt man in die VM dann eine CPU mit vielen Kernen spart man Lizenzkosten. Achtung oft wird aber der Host lizensiert, dann bringt's wieder nichts...

Dann gibt es Software die nur ein geringe Zahl an CPUs vertragen aber mit vielen Kernen keine Probleme haben z.B XP

Glaube mich auch daran zu erinnern, dass das irgendwo so bi VMware stand.

Gruß Peter

Member
Beiträge: 155
Registriert: 24.05.2012, 15:37

Beitragvon vMario156 » 07.06.2012, 20:39

Das ist Jacke wie Hose.

Wie Peter schon gesagt hat, macht man das nur aus Lizensierungsgründen sinn.

Gruß Mario

King of the Hill
Beiträge: 12331
Registriert: 01.10.2008, 12:54
Wohnort: laut USV-Log am Ende der Welt...

Beitragvon Dayworker » 07.06.2012, 23:22

In meinen Augen macht es zumindest bei rechenintensiven Aufgaben schon einen Unterschied, ob man nun 1vCPU mit 8vCores oder 8vCPUs mit 1vCore hat.
Während bei ersterem das OS/VM davon ausgehen kann, dass die CPU die Hauptarbeit bei der Verwaltung der Corezustände und der Wahrung der Kohärenz uebernimmt, muß beim zweiten das OS in der VM mit den dadurch angebotenen 8CPU-Sockel überhaupt etwa anfangen können und der Hypervisor sich hauptsächlich um Verwaltung und Kohärenz kümmern. Gerade diese Kohärenzgeschichte scheint einiges an Rechenleistung zu binden.
Im Falle des erwähnten XP und dort beispielsweise in der Home-Version würden sich nur die 8 vCores vollständig nutzen lassen, da XP-Home nur 1CPU-Sockel unterstützt. Bei einer Home-VM würden in diesem Config-Fauxpas nämlich nur ein einziger Singlecore genutzt werden können...

Benutzeravatar
Member
Beiträge: 448
Registriert: 03.08.2010, 11:13
Wohnort: Sauerland

Beitragvon stahly » 07.06.2012, 23:43

@Dayworker:

Interessanter Ansatz! Hast Du zu Deiner These Benchmarks gefahren?

Ich habe gerade einen SQL Server 2003 mit 16 Kernen als 2 CPU mit jeweils 8 Kernen konfiguriert. Vielleicht wäre ein 4x4 performanter? ...

King of the Hill
Beiträge: 12331
Registriert: 01.10.2008, 12:54
Wohnort: laut USV-Log am Ende der Welt...

Beitragvon Dayworker » 08.06.2012, 23:27

Nein , leider nicht. Aber du kannst ja mal zwei VMs, einmal mit 1vCPU mit 8 Kernen und das Gegenstueck mit 8 vCPUs und Singlecores, erstellen und dann die Auslastung per esxtop vergleichen.
Auf meinem Schmalspurquad in veralteter 65nm-Ausfuehrung und ohne weiterfuehrende bzw optimierte VT-Funktionen hatte ich mit mehreren CPUs eine hoehere Grundlast gesehen gehabt.

Wie sich die Aenderung mehr Sockel (CPUs) oder mehr Kerne in einer Win-VM in der CPUID bemerkbar macht, hatte ich vor inzwischen fast 3 Jahren fuer den VMserver2.01 im Posting Beobachtungen mit 2 v.CPU-Kernen in einer VM in Bildern erfasst. Darin gehts zwar primaer um die Einstellung software, hardware und dynamic zur Aktivierung der HW-VT, sekundaer duerfte es jedoch auch einen Singlesockel mit Multicore (oberes Bild) und einen Multisockel mit Singlecores (mittleres Bild) abbilden.

Jenseits von Gut & Böse
Beiträge: 11398
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Beitragvon irix » 09.06.2012, 10:50

@Dayworker
Ich wuesste nicht warum das fuer den vSpherer Host einen Unterschied machen sollte was er fuer den Guest da praesentiert.

Ein SQL 2008 Standard ist auf 4 Sockel begrenzt und somit wuerde da ein 8x1 vCPU keinen Sinn machen. An SQL2003 kann ich mich nicht erinneren... .meintest du SQL Server 2005?

Gruss
Joerg

King of the Hill
Beiträge: 12331
Registriert: 01.10.2008, 12:54
Wohnort: laut USV-Log am Ende der Welt...

Beitragvon Dayworker » 09.06.2012, 17:00

Ich wuesste nicht warum das fuer den vSpherer Host einen Unterschied machen sollte was er fuer den Guest da praesentiert.

Was praesentiert denn vSphere da in Form der CPUID und woran orientiert sich die Kernverteilung allgemein?
Moeglich waere, das Multicore-VMs moeglichst auf dem gleichen Sockel abgebildet oder Kerne frei zusammengewuerfelt werden. Ersteres duerfte performanceunkritischer sein, da beim zweiten die Sockelverbindungen untereinander je nach CPU-Generation wesentlich staerker zutage treten. Meine Hoffnung waere jedenfalls, das vSphere solche Dinge beruecksichtigt hat und das scheint auch der Fall zu sein, wenn ich mir den Thread zum inaktiv gemeldeten Xeon E5 durchlese, aber das ist eine andere Baustelle.

Meine Beobachtungen koennten natuerlich auch mit HW-VT und BT (binary translation) zusammenhaengen und darueber die erhoehte Grundlast bei MultiCPU-VMs erklaeren, wenn vSphere ueberhaupt noch auf BT zurueckgreift und nicht einige grundlegende Sachen komplett der CPU uebertraegt.

Benutzeravatar
Member
Beiträge: 448
Registriert: 03.08.2010, 11:13
Wohnort: Sauerland

Beitragvon stahly » 09.06.2012, 20:06

irix hat geschrieben:....
An SQL2003 kann ich mich nicht erinneren... .meintest du SQL Server 2005?


Ist doch ganz einfach: Windows 2003 Standard mit SQL 2005 ;)

Benutzeravatar
Moderator
Beiträge: 3476
Registriert: 23.02.2005, 09:14
Wohnort: Burgberg im Allgäu
Kontaktdaten:

Beitragvon Tschoergez » 11.06.2012, 09:33

Hi!
Die Überlegungen von dayworker sind technisch gesehen legitim :grin: ... Allerdings ist das die Aufgabe vom vmkernel. Aus Sicht der Gast-Betriebssysteme ändert sich eigentlich nix (die Applikationen müssen ja nicht gesonders programmiert werden, ob multicore oder multi-cpu, sondern dass macht ja die "Hardware"-automatisch. In VMs eben der Hypervisor).

Ich schmeiß auch mal NUMA in den Raum...

Laut Doku/Schulungsunterlagen macht der ESX das alles automatisch "richtig" (d.h. er packt VMs in einen NUMA-Node, bzw. scheduled je nach Bedarf mehrere vCPUs zusammen oder eben getrennt auf den Sockeln)
Auch BT oder Hardware-Assisted wird je nach Gast-OS, VM-Hardware und phys. Hardware automatisch optimal ausgesucht. (Sieht man im vmware.log der VM beim Starten...)

Lesenswert dazu (sind glaub ich auch Benchmarks drin:)
http://www.vmware.com/files/pdf/techpap ... le_ESX.pdf

Vielleicht findet sich auch was zu dem Thema auf:
http://labs.vmware.com/publications

Viele Grüße,
Jörg


Zurück zu „VMs & Appliances“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste