Performance Vergleich: Warum muss das so schwierig sein?

10. November 2008 | Von | Kategorie: Strategische Berichte

Ein Artikel aus der NEWSolutions NEWSabo plus. Wirden Sie schon oft gebeten die Prozessorleistung und Performance verschiedener Server wie UNIX, eServer, PC-Server zu Verleichen. Frank Soltis vergleicht die verschiedenen Meßverfahren.

Performance Vergleich: Warum muss das so schwierig sein?


von Frank G. Soltis

fr5_lef_IMG_0771_Z_NegativVor einigen Monaten erhielt ich eine kurze Mitteilung von Jeff Importico von der Fa. Vanguard. Er drückte darin die Frustration aus, die er und viele andere iSeries Kunden in Gesprächen mit ihren Mainframe- und Unix Kollegen empfinden. Der Grund hierfür ist, eine ihm hin und wieder gestellte Frage, die er gerne beantworten würde: „Wie lässt sich die Performance eines iSeries Servers mit der Performance anderer Server vergleichen?“

Obwohl dies auf den ersten Blick wie eine einfache Frage aussieht, ist die Antwort alles andere als trivial. Ich muss zugeben, dass ich mich eine Weile mit diesem Gedanken beschäftigt habe, bevor ich hier nun versuchen will, eine Antwort zu geben.

Einfach ist nicht einfach

Alle Anbieter von Servern, IBM eingeschlossen, stellen Messverfahren zur Verfügung, mit denen sich die relative Performance ihrer Servermodelle innerhalb der gleichen Produktlinie vergleichen lässt. Diese Messverfahren weisen üblicherweise die maximale relative Performance eines bestimmten Prozessor-Features in einem Servermodell aus.

Auf den ersten Blick sieht das eher nach einer Bewertung der Prozessor-Leistung als nach einer Bewertung der Systemperformance aus. Die Performance-Messungen werden aber unter Einsatz der maximal möglichen Speicher- und I/O-Ausstattung für die einzelnen Modelle durchgeführt. Auf diese Weise lässt sich dann die relative Performance unterschiedlicher Prozessor-Features innerhalb einer Modellreihe oder zwischen unterschiedlichen Modellen ermitteln.

Für iSeries Systeme veröffentlicht IBM für alle Modelle Performance-Werte, basierend auf einem Bewertungssystem mit der Bezeichnung „Commercial Processing Workload“ (CPW). Zusätzlich wird die interaktive Performance in CPW für die unterschiedlichen interaktiven Features eines Modells gesondert ausgewiesen. Durch Verwendung dieser Werte ist ein Kunde in der Lage, die Performance eines iSeries Modells einzuschätzen und Vergleiche zu anderen iSeries Modellen anzustellen. Einfacher geht es eigentlich nicht mehr.

Für andere IBM Server werden andere Messverfahren eingesetzt. So wird zum Beispiel die Performance der Mainframe zSeries Server üblicherweise in „millions of instructions per second“ (MIPS) ausgewiesen. Auch dies ist eine recht einfache Bewertungsgrundlage, um die die Performance eines Mainframe Modells mit einem anderen zu vergleichen. Ein weiteres Beispiel ist das kürzlich für IBM pSeries Unix Server eingeführte neue Messverfahren „rPerf“. Mit diesem Verfahren lässt sich die relative Performance von pSeries Servern vergleichen.

Das Problem allerdings ist, dass eine direkte Vergleichsmöglichkeit zwischen CPWs, MIPS und rPerfs nicht existiert. Die Tatsache, dass IBM aber die jeweils zugrunde liegenden Berechnungsmethoden nicht veröffentlicht, macht einen Vergleich zwischen den einzelnen Produktlinien auf diese Weise praktisch unmöglich.

Vor einigen Jahren wurde der Ansatz verfolgt, das der Berechnung von MIPS zugrunde liegende Modell auf AS/400 Systeme anzuwenden, um eine Vergleichbarkeit zwischen den Produktlinien zu ermöglichen. Zur Ermittlung des MIPS Wertes wird der Instruktionsmix einer typischen Workload herangezogen. Aus der Gesamtanzahl der Instruktionen werden die prozentualen Anteile an loads, stores, branches usw. ermittelt. Dann wird die für jede dieser Instruktionen benötigte Zeit herangezogen, um zu einer durchschnittlichen Zeit pro Instruktion (gemessen in Mikrosekunden) zu gelangen. Der Kehrwert dieser durchschnittlichen Instruktionszeit ergibt den MIPS Wert des Systems. Die tatsächlich anzustellenden Berechnungen sind allerdings erheblich komplexer, da überdies unterschiedliche Prozessoren und die Einflussgrößen unterschiedlicher Speicher auf diese Prozessoren mit berücksichtigt werden müssen.

In der Vergangenheit wurde einmal der Ansatz verfolgt, den für Mainframes verwendeten Instruktionsmix zu benutzen und diesen mit den Instruktionszeiten eines System AS/400 zu bewerten. Für die Berechnung wurde das im Mai 2000 angekündigte erste Modell 840 mit 24 I-Star Prozessoren ausgewählt. Diese Berechnung ergab einen Wert von annähernd 2.200 MIPS. Für eine Weile diskutierten wir diesen Wert öffentlich, da zu diesem Zeitpunkt das größte einzelne Mainframe System einen Wert von ca. 1.700 MIPS aufweisen konnte. Kurze Zeit später übernahm die Mainframe Produktlinie mit einem neu angekündigten 20-Prozessoren zSeries Modell mit 2.400 MIPS wieder die Spitze. Natürlich ist es in der Mainframe Welt möglich, bis zu 32 einzelne Server in Clustern zusammenzufassen, die schliesslich einen Komplex von 640 Prozessoren mit einem erheblichen MIPS Wert bilden können.

Letztlich ist aber eine Berechnung nach MIPS keine brauchbare Methode für die Bewertung von iSeries Systemen, da die hier verwendeten PowerPC Prozessoren über einen gänzlich anderen Instruktionssatz verfügen als Mainframe Prozessoren. Überdies differieren aufgrund der unterschiedlichen Betriebssysteme die typischen Workloads zwischen iSeries und zSeries Systemen erheblich. Betrachtet man typische kommerzielle Workloads, wird man feststellen, dass eine überwiegende Anzahl der Instruktionen im Betriebssystem ablaufen, wo auf Anforderung aus den Anwendungen bestimmte Funktionen ausgeführt werden. Somit hat auch das Betriebssystem selbst einen nicht unerheblichen Einfluss auf den Instruktionsmix.

Bis hierher habe ich nur die für drei IBM Server verwendeten Messverfahren angesprochen. Betrachtet man nun zusätzlich die unterschiedlichen Messverfahren anderer Hersteller, so wird schnell klar, dass es hier keine einfachen Antworten gibt. Überdies sollte man bei diesen Betrachtungen die PC Server nicht vergessen.

Gigahertz: Eine universelle Vergleichsmethode?

Bei xSeries und anderen PC Servern machen sich im Grunde weder IBM noch die anderen Anbieter die Mühe, spezielle Performance-Messmethoden einzusetzen. Hier wird die Performance eines Servers schlicht in Anzahl der Intel Prozessoren und der Prozessor-Taktfrequenz in Megahertz (MHz) oder Gigahertz (GHz) ausgedrückt. Die Verwendung der Prozessor-Taktfrequenz ist aber nicht unbedingt auf PC Server limitiert. Bei dem kürzlich angekündigten IBM eServer p690 wurde die GHz Taktfrequenz des neuen POWER4 Prozessors deutlich herausgestellt. IBM nimmt für sich in Anspruch, dass der neue p690 Server mit 32 Prozessoren der weltweit stärkste Unix Server ist, der mit seiner Leistung mit Leichtigkeit in der Lage ist, Unix Server der Mitbewerber zu schlagen, die über die doppelte Anzahl von Prozessoren oder mehr verfügen. IBM ist zu Recht stolz auf diese neuen Prozessoren, die zukünftig auch in iSeries Modellen Verwendung finden werden.

Der Reiz bei der Verwendung dieser Vergleichsmethode liegt in deren Einfachheit. Wir alle können leicht verstehen, dass ein 1,5 GHz Prozessor schneller sein muss als ein 1,0 GHz Prozessor. Aber ist das wirklich so? Gegenwärtige Entwicklungen haben eine Reihe von Fragen in Bezug auf Verwendung der reinen Taktfrequenz in GHz als Performance-Vergleichsmethode aufgeworfen.

Schlagworte: , , , , , , , , , , , , , , , , , ,

Schreibe einen Kommentar

Sie müssen eingeloggt sein, um einen Kommentar schreiben.