Ubuntu: Desktop tuning mit elevator=deadline
Geschrieben von everflux am November 20th, 2010Ubuntu ist für mich das Arbeitstier schlechthin – mit keinem anderen Betriebssystem würde ich derzeit längere Zeit arbeiten wollen. Auch wenn ein kleiner Blick gen OpenIndiana schweift – an OpenSolaris habe ich immer bewundert, wie gut sich das System unter Last noch anfühlt. Genau das vermisse ich bei Ubuntu: Wenn ein Maven-Build läuft, Netbeans meint es müsse mal wieder tüchtig scannen oder ich dabei noch ein paar Kleinigkeiten machen will, wird es schnell mal duster. Im wahrsten Sinne des Wortes: Applikationen, die durch IO blockiert sind, bekommen dunklere Fenster auf dem Desktop.
Und das ist nicht gerade selten der Fall, bestes Beispiel ist Firefox wenn ich auf eine Seite gehe, auf der 20 verschiedene Flash Applets eingebunden sind (z.B. Google Adsense Review Center, also keine Game Seiten). 10 Sekunden Bedenkpause mindestens. Von virtualisierten Maschinen die parallel laufen mal ganz zu schweigen – diese haben eine eigene Festplatte spendiert bekommen.
Nun hat es mich also interessiert, wie kann es sein, dass bei gleicher Hardware ein Solaris so viel flotter von der Hand geht? Sicherlich hat der Scheduler was damit zu tun, und vielleicht sind die Treiber auch optimiert – aber das kann nicht alles sein. Richtig: Denn es gibt nicht nur Scheduler für die CPU Zeit, sondern auch für die IO Zugriffe. Alle Lese- und Schreiboperationen werden von dem Betriebssystem nach einem bestimmten Prinzip abgearbeitet. Der einfachste Scheduler tut einfach nichts („noop“) und reicht die Anfragen direkt an die Hardware weiter. Das macht z.B. bei SSD Speichern und virtuellen Maschinen Sinn: Bei SSD Festplatten zahlt man keinen direkten Strafzoll in Form von langsamen Kopfbewegungen bei der Festplatte für weit entfernt liegende Datenblöcke, und virtuelle Maschinen greifen sowieso nicht direkt auf die Hardware zu. Weiterlesen »
Neue Kommentare