Chip-Jonglage

Die schnellen Subsysteme CPU und Hauptspeicher haben einen entscheidenden Anteil an der Gesamtleistung eines Linux-Servers. Zwar lassen sich deren physikalische Eckdaten mit Betriebssystemmitteln per se nicht verändern, doch verspricht eine Optimierung der Ressourcenverwaltung durchaus mehr Leistung.

vorlesen Druckansicht
Lesezeit: 4 Min.
Von
  • Eduardo Ciliendo

Nachdem sich der erste Teil des Performance-Tuning-Tutorials mit eher allgemeinen Maßnahmen zur Leistungssteigerung eines Linux-Servers befasste, geht es im zweiten Teil dediziert um die schnellen Subsysteme CPU und Hauptspeicher. Beide haben großen Einfluss auf die Gesamtleistung eines Servers. Auch wenn sich die betreffenden Subsysteme selbst durch Betriebssystemmittel nicht beschleunigen lassen, so bietet die Ressourcenverwaltung Optimierungspotenzial. Wie im ersten Teil erwähnt, muss sich dieses Tutorial bei der Vorstellung der Optimierungsmaßnahmen und der dazugehörigen Analysewerkzeuge auf eine Auswahl beschränken - zum einen schlicht aus Platzgründen, zum anderen auf Grund der enormen Fülle an Optionen und Tools. Der Autor ist aber der Überzeugung, dass sich mit den hier vorgestellten Methoden und Werkzeugen ein beträchtlicher Teil des Optimierungspotenzials von Linux ausschöpfen lässt.

Mehr Infos

Messungen an einem System mit hundert Prozent Idle Time liefern in den seltensten Fällen wichtige Daten zur Systemleistung. Generell sollten Messungen an Servern unter Last erfolgen (aus Sicherheitsüberlegungen natürlich nicht am produktiven System). Oft lässt sich ein Server aber nicht unter realer Last beobachten, da man beispielsweise neue Hardware evaluiert oder die endgültigen Anforderungen an das System nicht bis ins Detail bekannt sind. In solchen Fällen können Benchmarks als wichtige Werkzeuge bei der Leistungsanalyse hilfreich sein. Man sollte sie aber mit dem Bewusstsein verwenden, dass sie lediglich gewisse Charakteristika einer Applikation beziehungsweise eines Einsatzgebietes simulieren können. Stets sollte man einen Benchmark wählen, der im Systemverhalten eine größtmögliche Übereinstimmung mit der später einzusetzenden Applikation zeigt. So beeindrucken zwar die 367 000 GFlops Spitzenleistung eines BlueGene/L (siehe „Quellen“), jedoch sagt dies lediglich etwas über die Leistung beim Linpack-Benchmark aus - als Printserver muss sich das weltschnellste Rechensystem nicht zwingend eignen. Die vielerorts publizierten Benchmarks sind vielmehr als Formel-1-Wertung der IT zu verstehen: Gute Resultate auf der Rennstrecke lassen nicht automatisch auf das Fahrverhalten der Personenwagen des jeweiligen Herstellers schließen.

Ist man sich der Grenzen von Benchmarks bewusst, kann man durchaus wichtige Daten aus einem Leistungstest ziehen. Ermittelt ein Programm wie IOzone beispielsweise eine gute Random-I/O-Leistung eines Plattensubsystems, so liegt der Schluss nahe, dass sich dasselbe System auch beim Einsatz an einem Dateiserver bewährt. Im dritten Teil des Tutorials wird eine Auswahl von Leistungstests für diverse Subsysteme wie Cache oder Netzwerk vorstellen.

Meist wird das Thema Performance-Tuning erst aktuell, wenn die Systemleistung nicht (mehr) den Erwartungen der Benutzer entspricht. Trotz der dann einsetzenden Hektik sollte der Systemspezialist nicht sofort nach neuer Hard- und Software verlangen, sondern besser einen Blick auf die Leistungszahlen des Systems werfen. Mit etwas Glück beziehungsweise vorausdenkenden Systemadministratoren stehen dabei Langzeitmessungen der vergangenen Wochen und Monate zur Verfügung - besonders luxuriös mit grafisch aufbereiteten Kennzahlen.

Für einfache Langzeitmessungen der Systemleistung eigenen sich die Systemwerkzeuge nmon und sar. Beide lassen sich aus dem Internet herunterladen (siehe „Quellen”), wobei bei sar zu beachten ist, dass es zum Paket Sysstat gehört, das fester Bestandteil der gängigen Linux-Distributionen ist. Insbesondere sar eignet sich hervorragend zur Protokollierung einer Fülle von Messwerten über einen längeren Zeitraum. Tritt ein Engpass in der Systemleistung auf, erlauben es diese Tools zurückzuverfolgen, wann und in welchem Subsystem er aufgetreten ist.

Wie und mit welchen Werkzeugen man Aussagen über die Leistung der schnellen Systemkomponenten CPU(s) und Speicher erhält, beschreibt der vollständige Artikel in der Printausgabe der iX.

Mehr Infos

iX-TRACT

  • Prozessoren und Hauptspeicher haben als schnelle Subsysteme entscheidenden Einfluss auf die Gesamtleistung eines Linux-Servers.
  • Mit Messungen am laufenden System lassen sich Engpässe in der Ressourcenverwaltung erkennen und gegebenenfalls GegenmaĂźnahmen ergreifen.
  • Bei Skalierungsproblemen sollte man auf jeden Fall einen Blick auf die Anwendung werfen, die auf dem Server laufen soll.

Teil I: EinfĂĽhrung, generelle OptimierungsmaĂźnahmen

Teil III: Langsame Subsysteme, Festplatten und Netzwerk (avr)