"Leistung" hat viele Aspekte. Die n00bs messen die Startzeit eines Betriebssystems und sagen, dass z. B. Windows 2012 sooooooo großartig ist, weil es in 12 Sekunden auf echtem HD, möglicherweise 1 Sekunde auf SSD, startet.
Aber diese Art von Maßnahme ist nicht sehr nützlich: Die Leistung entspricht der Startzeit des Betriebssystems, aber das Betriebssystem startet einmal im Monat, sodass eine Optimierung, die wenig Sinn ergibt, nicht sinnvoll ist.
Da es mein tägliches Geschäft ist, möchte ich auf die 4 folgenden Teile hinweisen, aus denen die "Leistung" besteht.
CPU-Auslastung
Dies sollte vergleichbar sein, dh eine Task, die 1000 ms auf Bare Metal benötigt, wird in 1000 ms Prozesszeit und wahrscheinlich 1050 ms Taktzeit in einer inaktiven VM-Umgebung auf derselben Hardware ausgeführt (einige Details später). Google das MSDN für processtime und queryperformancecounter und Sie können eine Sache tun, die zeigen kann, wie viel die VM Ihre CPU-Zeit verbraucht.
SQL-Leistung
Die SQL-Leistung hängt stark von der E / A-Leistung des Datenspeichers ab, in dem die SQL-Daten gespeichert sind. Ich habe einen Unterschied von 300% zwischen ISCSI der ersten Generation gesehen, den Sie auf Buffalo Home NAS finden können, und ISCSI mit DCE und einer echten Old-School-FC-Umgebung auf allen Ebenen. Der FC gewinnt auch heute noch, da die FC-Latenz die niedrigste Archivierungsrate ist, die zu einer "Kopie" des FC-Protokolls für Verbesserungen des TCP / IP-Datencenters führt. Hier ist IOps und Latenz von entscheidender Bedeutung, aber auch die IO-Bandbreite vom Serverprozess bis zum Medium - hängt davon ab, ob die App zu No-SQL oder zu Datawarehousing tendiert oder wie ERP-Systeme in der Mitte ist ... Sage KHK für kleine Unternehmen, SAP für die Großen.
Dateisystemzugriff
Einige Anwendungen, wie Video-Streaming, basieren auf einer garantierten Mindestbandbreite, andere auf einem maximalen E / A-Durchsatz, z. B. das Öffnen großer Dateien in einem Hex-Editor und das Laden eines Videoprojekts in Ihren Lieblingsfilm. Keine typische Situation auf einem VM .... die IOps können auch für Entwickler wichtig sein. Entwickler verwenden häufig VMs, da Entwicklungsumgebungen sehr sensibel sind und die Versuchung groß ist, dies in einer VM zu tun. Das Kompilieren eines großen Projekts bedeutet oft, Tonnen kleiner Dateien zu lesen, die Compiler-Aufgaben zu erledigen und eine EXE-Datei und die zugehörigen Komponenten zu erstellen.
Netzwerklatenz zum Client
Hier hängt die Benutzerfreundlichkeit von WYSIWIG-Programmen wie Word 2010, Openoffice Writer, LaTEX, GSView und anderen stark von der Geschwindigkeit ab - wie schnell eine Mausaktion vom Client zum Server gelangt. Besonders in CAD-Apps ist dies wichtig .... aber auch kein LAN-Problem, sondern der Fernzugriff über WAN, wo dies wichtig ist.
Aber - und ich spreche aus der Perspektive jahrelanger Beratung - es gibt Benutzer mit dem Administratorkennwort (und sie sind oft Angestellte einer BIG-Firma mit einem BIG-Budget und einem BIG-Taschenbuch), die sich über dies und das beschweren, aber es muss geklärt werden welche leistungskomponente ist ihnen wichtig und welche ist aus sicht der von ihnen verwendeten anwendung wichtig.
Es ist höchstwahrscheinlich kein Notizblock, sondern eine hochentwickelte Anwendung zum Entwickeln dieses und jenes, die ebenfalls sehr teuer war und auf VMware, HyperV oder Xenapp verschoben werden sollte und nicht die erwartete Leistung erbringt.
Sie haben jedoch keine Ahnung, dass es mit 1,5-GHz-Xeons auf Blades laufen kann, die nicht für reine CPU-Leistung ausgelegt sind. Sie sind für einen Durchschnittswert ausgelegt, z. B. "Optimiert für $ pro CPU-Zyklus" oder "CPU-Zyklen pro Watt". .
Und wenn wir über Kompromisse und Einsparungen sprechen, führt dies meist zu Überbindungen. Überlastungen führen zu einem Mangel an Ressourcen, bei denen die CPU recht gut gehandhabt werden kann, aber ein Mangel an Arbeitsspeicher führt zu Paging, ein Mangel an E / A in den Core-Routern führt zu längeren Antwortzeiten für alles, und eine Transaktionsüberlastung für jede Art von Speicher kann jede nützliche App stoppen zu schnell reagieren. Hier ist eine Überwachung erforderlich, aber viele Softwareanbieter sind nicht in der Lage, solche Informationen bereitzustellen. Andererseits kann ein Host mit Ressourcen von 3 physischen Servern höchstwahrscheinlich 8 virtuelle Maschinen mit dem gleichen Layout wie die physischen verwalten.
Die CPU-Kompromisse bei inaktiven Systemen führen häufig dazu, dass Systeme 50% langsamer arbeiten als physische Systeme. Andererseits ist niemand in der Lage, das Betriebssystem "Real World" und die App "Real World" zu installieren, die die IT-Mitarbeiter des Kunden in die VM integrieren möchten Box. Und es dauert Tage (vielleicht Wochen, aber sicher 42 Meetings), um zu verdeutlichen, dass die VM-Technologie durch den Handel mit reiner CPU-Geschwindigkeit Flexibilität bieten kann. Dies ist nur in die CPUs dieser Blade-Systeme integriert, die heutzutage größere VM-Umgebungen hosten. Auch der Speicher wird nicht vergleichbar sein, auch einige Kompromisse gelten. DDR3 1600 CL10 hat eine höhere Speicherbandbreite als DDR2 800 ECC LLR - und jeder weiß, dass Intel-CPUs anders davon profitieren als AMD-CPUs. Aber sie werden nur selten in produktiven Umgebungen eingesetzt. mehr in Whiteboxen oder in Rechenzentren in Ländern der 3. Welt, die einen Rechenzentrums-Service für 10% des Preises anbieten, den ein Rechenzentrum in Ihrem Heimatland möglicherweise in Rechnung stellt. Dank Citrx kann ein Rechenzentrum überall sein, wenn zwischen dem Endbenutzer und dem Rechenzentrum weniger als 150 ms Latenz liegen.
Und die Perspektive der Heimanwender ...
Zu guter Letzt möchten einige Leute Win7 oder XP wegwerfen und gegen Linux eintauschen, und dann stellt sich die Frage nach den Spielen, da eigentlich nur wenige Spiele für Linux und Windows verfügbar sind. Gaming setzt stark auf 3D-Beschleunigung. VMWare 6.5 Workstation und der angeschlossene kostenlose Player können mit DirectX 9 umgehen, dh ein Doom3 in einer VM kann auf der Host-Grafikkarte im Vollbildmodus ausgeführt werden. Bei Spielen handelt es sich meistens um 32-Bit-Apps, sodass sie nicht mehr als 3 GB und meistens nicht mehr als 3 CPUs (bei Crysis) verbrauchen. Neuere VM-Player und WS können mit höheren DirectX-Versionen und wahrscheinlich auch mit OpenGL umgehen ... Ich habe UT und UT2004 auf VMware 6.5 gespielt, der Host hatte ein ATI Radeon 2600-Mobiltelefon und eine T5440-CPU. Es war stabil bei 1280x800 und sogar auf Netzwerkspielen spielbar ....