| ... | Artikel und Whitepapers |
| ... | Benny's Blog (Englisch) |
| ... | Training Classes (Englisch) |
| ... | DrTritsch auf Twitter (Englisch) |
| ... | Deutsche Webseiten |
| ... | Microsoft Resourcen |
| ... | Microsoft Downloads |
| ... | Community Webseiten |
| ... | Freie Werkzeuge |
| ... | Anbieter und komplementäre Produkte |
| ... | Software-Entwicklung |
| ... | Über diese Webseite |
| ... | Mein Kurzprofil |
| ... | Meine Biographie |
| ... | Präsentationen 2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004 und früher |
| ... | Veröffentlichungen |
| ... | Buch: Windows Server 2003 Terminaldienste |
Copyright © B. Tritsch, Mai 2007
[Einleitung] [Messmethode] [Vorbereitung] [Durchführung] [Ergebnisse]
Die Anmeldesequenzen liefen auf allen Servern sehr synchron, was durch das Werkzeug vRD auf den Lasterzeugern gewährleistet wurde. Somit waren die Ergebnisse leicht vergleichbar.
Auf dem 32-Bit-Server mit Microsoft Office 2003 war es möglich, dass sich alle 120 Benutzer anmeldeten und ihre Office-Anwendungen Word, Excel und PowerPoint mit den zugehörigen Dokumenten starteten. Dies resultierte in insgesamt 1.238 Prozessen, wozu jeweils 120 Instanzen von Word, Excel und PowerPoint entsprechend mit 360 Prozessen beitrugen.

Auf dem 32-Bit-Server mit Microsoft Office 2007 konnten sich dagegen nur etwa 100 Benutzer anmelden. Danach ging das System in einen Sättigungszustand, der keine weiteren Benutzeranmeldungen gestattete. Insgesamt wurde 97 mal Word, 97 mal Excel und 95 mal PowerPoint gestartet. Am Ende des Tests liefen maximal 916 Prozesse und 7.256 Threads auf dem System.
Auf dem 32-Bit-Server mit OpenOffice.org 2.1 konnten sich ebenfalls nur etwa 100 Benutzer anmelden, bevor das System in die Sättigung ging und keine weiteren Anmeldungen zuließ. Insgesamt ließen sich 928 Prozesse bei OpenOffice.org 2.1 mit gestartetem Writer, Calc und Impress beobachten. Alle OpenOffice-Anwendungen werden innerhalb der Laufzeitumgebung Soffice.bin ausgeführt und bilden somit keine eigenen Prozesse aus. Zusätzlich ist noch pro Benutzersitzung der Startprozess Soffice.exe nötig. Die beiden Prozesse Soffice.exe und Soffice.bin wurden daher auf dem Server mit OpenOffice jeweils 99 mal beobachtet.
Auf den 64-Bit-Servern konnten sich dagegen bei Office 2003 sowie OpenOffice.org alle 120 Benutzer und bei Office 2007 etwa 115 Benutzer anmelden. Die restlichen Beobachtungen bezüglich der Anmeldemechanismen ließen sich aus der 32-Bit-Welt auch auf die 64-Bit-Umgebung übertragen.

Das unterschiedliche Sättigungsverhalten der 32-Bit-Server bei den jeweiligen Office-Suiten zeigte sich noch ausgeprägter bei Betrachtung des verfügbaren Speichers über die Laufzeit des Tests. Zu Anfang der jeweiligen 32-Bit-Testläufe standen etwa 3,3 GB freier Speicher zur Verfügung. Während sich auf dem Server mit Microsoft Office 2003 etwas über 100 Benutzer und bei Microsoft Office 2007 etwa 80 Benutzer anmelden konnten bevor der Speicher zur Neige ging und dadurch Auslagerungsaktivitäten deutlich sichtbar wurden, war dies bei dem Server mit OpenOffice.org 2.1 schon bei etwa 50 Benutzern der Fall.

Bei den 64-Bit Servern, die mit 8 GB über die doppelte Menge an physikalischem Hauptspeicher verfügten, war ein solches Verhalten erst später zu beobachten. Der verfügbare Speicher ging für OpenOffice.org bei 90 Benutzern und bei Microsoft Office 2007 bei 110 Benutzern zur Neige. Bei Office 2007 war er dagegen über den gesamten Testlauf groß genug, dass keinerlei Engpässe auftraten.

Bei den 32-Bit-Systemen war es jedoch nötig den Speicherverbrauch ein wenig näher zu betrachten. Der grundlegende Speicherbedarf der Anwendungen zeigte sich auf dem 32-Bit-Server mit Office 2003 wie folgt:
Das Starten der drei Anwendungen in einer Benutzersitzung mit den jeweiligen Dokumenten resultierte somit in einem Speicherbedarf von Anfangs knapp 60 MB, der sich jedoch nach relativ kurzer Zeit auf weniger als 30 MB reduzierte. Das erste „Trimmen“ des Working Sets geschah dabei noch bevor Speichergrenzen erreicht wurden.
Auf dem 64-Bit-System verbrauchten die Anwendungen von Office 2003 die folgenden Speicherressourcen: Microsoft Word im Schnitt 26-27 MB (27,3 MB initialer Höchstwert), Microsoft Excel im Schnitt 13,6 MB (13,6 MB initialer Höchstwert) und Microsoft Powerpoint im Schnitt 1,8-2,9 MB (23 MB initialer Höchstwert). Der Speicherbedarf pro Benutzersitzung belief sich somit auf Anfangs fast 65 MB, was sich mit der Zeit auf knapp 45 MB reduzierte. Die Speicherverwaltung des Betriebssystems musste zu keinem Zeitpunkt mit der massiven Auslagerung von Speicher beginnen.
Bei dem 32-Bit-Server mit Microsoft Office 2007 war folgender Speicherverbrauch der Anwendungen zu beobachten:
Anfangs lag der Speicherbedarf der drei Anwendungen von Office 2007 bei knapp über 80 MB, nach kurzer Zeit sank er dann auf etwa 40 MB pro Benutzersitzung.
Auf dem 64-Bit-System verbrauchten die Anwendungen von Office 2007 die folgenden Speicherressourcen: Microsoft Word im Schnitt 26 MB, was auch den initialen Höchstwert darstellte, Microsoft Excel im Schnitt 23,8 MB (24 MB initialer Höchstwert) und Microsoft Powerpoint im Schnitt 3,8-7,0 MB (45 MB initialer Höchstwert). Der Speicherbedarf belief sich somit auf Anfangs fast 95 MB pro Benutzersitzung und wurde dann auf etwa 55 MB reduzierte. Zusätzlich trug der Prozess Splwow64 mit etwa 5 MB zu jeder Benutzersitzung bei, wobei es sich um die Laufzeitumgebung zur Unterstützung von 32-Bit-Prozessen auf der 64-Bit-Plattform handelt. Auch mit diesem Speicherbedarf war die 64-Bit-Plattform mit 8 GB Hauptspeicher nicht an ihren Auslastungsgrenzen als über 100 Benutzer angemeldet waren.
Bei OpenOffice.org sah die Situation auf Prozessebene ein wenig anders aus, insbesondere da sich die einzelnen Anwendungen nicht direkt durch ihr Speicherabbild unterscheiden ließen. Alle Anwendungen wurden in der OpenOffice-Laufzeitumgebung Soffice.bin gestartet. Dies resultierte auf der 32-Bit-Plattform in folgenden Werten:
Somit belief sich der Höchstwert beim Start der drei OpenOffice-Anwendungen mit den zugehörigen Dokumenten auf fast 90 MB pro Benutzersitzung. Ganz offensichtlich ist es für das Betriebssystem deutlich schwieriger die Working Sets der in einer Laufzeitumgebung gekapselten Anwendungskomponenten effizient zu verwalten.
Unter der 64-Bit-Variante von Windows Server 2003 betrug das typische Working Set von Soffice.bin 78 MB bei einem Höchstwert von 87 MB. Soffice.exe trug wieder nur mit einem Working Set von 200 kB und einem Höchstwert von knapp 3 MB bei.

Die Grafik zeigt daher recht deutlich, dass das Windows Betriebssystem mit der Situation auf dem 32-Bit-Server mit Office 2003 und auch Office 2007 effizienter seinen Speicher verwalten kann. Das charakteristische Sägezahnmuster beim „Trimmen“ des Working Sets beim Erreichen von kritischen Limits stellt die Optimierung jener Speichermenge dar, die von einzelnen Prozessen verbraucht wird. Die Optimierung resultiert in mehr freiem Speicherplatz, der von neuen Prozessen genutzt werden kann. Die typische Menge des Speichers, der auf den Servern mit Microsoft Office freigeräumt werden kann liegt bei etwa 1 GB pro Sägezahn.
Auf dem 32-Bit-Server mit OpenOffice steigt die Summe der Working Sets aller Prozesse schneller an als bei Microsoft Office und führt schon bei etwa 50 Benutzern in eine Sättigung. Hier muss der Speicher massiv auf die Festplatte ausgelagert werden, was zu entsprechenden Systemaktivitäten führt. Beim 32-Bit-Server mit Microsoft Office 2003 ist ein ähnliches Verhalten erst ab einer Zahl von über 100 Benutzersitzungen und bei Office 2007 ab einer Benutzerzahl von 80 zu beobachten. Bei der Anzahl von 110 Benutzern, die sich für das System mit Office 2003 noch völlig unproblematisch zeigt, ist der 32-Bit-Server mit OpenOffice – jedoch auch mit Office 2007 – schon soweit in der Sättigung seiner Gesamtressourcen, dass keine Benutzeranmeldungen mehr möglich sind.
Sehr schön lässt sich diese Systematik auch an der Nutzung der Auslagerungsdatei beobachten. Während der Server mit OpenOffice die Auslagerungsdatei zu Anfang fast gar nicht nutzt, findet bei Microsoft Office eine permanente Auslagerung von Daten auf diese Datei statt.

Auch die Auswertung der 64-Bit-Systeme zeigt das Ansteigen des Working Set über alle Prozesse sehr deutlich. Aufgrund der höheren Menge an physikalischem Speicher können keine der typischen Sägezahnmuster für das massive Trimmen des Working Set durch die Speicherverwaltung beobachtet werden. Nur bei OpenOffice.org versucht das System die Speichernutzung in kleineren Ausschlägen zu optimieren.

Die Zugriffe auf die Auslagerungsdatei folgen einem ähnlichen Muster wie bei den 32-Bit-Systemen. Auch hier beginnt die Speicherverwaltung des Servers mit OpenOffice erst beim Erreichen eines Sättigungszustands die Auslagerungsdatei aktiv zu nutzen. Die Server mit Microsoft Office lagern Prozessdaten dagegen schon von Anfang an aus und erhöhen dann bei Bedarf die Größe der Auslagerungsdatei, was jedoch seinerseits ebenfalls zu Sättigungseffekten führen kann.

Beim genaueren Betrachten der Aktivitäten auf der Festplatte lassen sich die unterschiedlichen Anforderungen an die Ressourcen zusätzlich bestätigen. Wie schon weiter oben zu sehen war beginnen bei dem 32-Bit-Server mit OpenOffice.org 2.1 ab etwa 50 Benutzern aufgrund des aufgebrauchten freien Hauptspeicher verstärkte Zugriffe auf die Festplatte, was sich auch durch eine größere Warteschlangelänge zeigt. Bei den 32-Bit-Server mit Microsoft Office 2007 und Office 2003 zeigen sich ähnliche Muster erst ab etwa 80 beziehungsweise 100 Benutzern.
Das Einsetzen solcher konzentrierter Speicherauslagerungen führen oftmals zu deutlich spürbaren Einbrüchen der Systemreaktion innerhalb der einzelnen Benutzersitzungen eines Terminalservers. Dieses Verhalten ist auch bei diesem Test zu beobachten. Die Anmeldezeiten der Sitzungen werden ab dem fünfzigsten Benutzer auf dem System mit OpenOffice.org länger als zuvor. Für Benutzer wird die Interaktion mit dem System ab diesem Moment deutlich zäher.

Bei den 64-Bit-Systemen sind deutliche Anstiege in der Warteschlangelänge nur bei OpenOffice.org zu beobachten, da bei Microsoft Office aufgrund der permanenten Speicheroptimierung der einzelnen zugehörigen Prozesse keine plötzlichen massiven Auslagerungsaktionen durch die Speicherverwaltung vorgenommen werden müssen.

Neben der Speicherauslastung werden auch Unterschiede bei der Betrachtung der Prozessorauslastung sichtbar. Im Schnitt zeigt der 32-Bit-Server mit OpenOffice.org 2.1 eine höher liegende Auslastung als der vergleichbare 32-Bit-Server mit Office 2003 oder Office 2007. OpenOffice.org erzeugt im Mittel eine Prozessorauslastung von 20% während die Server mit Microsoft Office bei etwa 10% liegen. Auch hier sind stärkere Ausschläge der CPU-Last ab dem Zeitpunkt zu erkennen, an dem der physikalische Speicher verbraucht ist und massive Aktivitäten zur Auslagerung nötig sind.

Ähnlich wie auf der 32-Bit-Plattform sieht es auch unter der 64-Bit-Variante von Windows Server 2003 aus, wenn es um die Prozessorauslastung der Server mit den verschiedenen Office-Suiten geht.
