dWing — die Welt ist nicht gerecht

sign in

Was bringt ureadahead

Nachdem readahead in Jaunty durch sreadahead in Karmic ersetzt wurde gab es heute ein Update auf ureadahead in karmic-proposed.

Jedes dieser Systeme sollte die Startzeit verkürzen indem Dateien bevor sie benutzt werden bereits in den RAM gelesen werden.

sreadahead sollte vor allem SSD Speicher beschleunigen und ist parallel zum normalen Startvorgang gelaufen. Leider hatte es bei mechanischen Festplatten den gegenteiligen Effekt. Da es parallel gelaufen ist, hat es selbst andere Prozesse beim Festplattenzugriff ausgebremst und der Startvorgang wurde insgesamt langsamer.

ureadahead ist eine Weiterentwicklung dessen. Dabei unterscheidet ureadahead zwischen SSDs und mechanischen Festplatten. Bei mechanischen erstellt er zuerst eine Liste aller Dateien, die beim starten benötigt werden, sortiert diese dann gemäß ihrer physikalischen Position auf der Festplatte und liest diese dann beim nächsten Start der Reihe nach aus. Die Sortierung stellt sicher, dass der Lesevorgang möglichst sequenziell abläuft um Bewegungen der Leseköpfe zu minimieren und Datendurchsatz zu maximieren. Dabei warten andere Prozesse bis dieser Vorgang beendet ist.


Wenn ich meinen eben erstellten Bootchart mit einem älteren vergleiche sieht man gleich, dass die Startzeit um fast 15 Sekunden verkürzt wurde. Kleine Erklärung: In den Grafen oben bedeutet das Rosa, dass die Festplatte ausgelastet ist bzw. dass Prozesse auf Daten von der Festplatte warten. Blau bedeutet, dass der Prozessor wirklich Arbeit verrichtet. Die grüne Linie bedeutet Datendurchsatz. Ist weder Rosa noch Blau vorhanden dann passiert nichts, die Festplatte ist inaktiv und der Prozessor hat nichts zu berechnen.

Und da fallen mir gleich zwei Probleme auf, die verbessert werden müssen.

Alles in allem bin ich aber mit dem heutigen Update sehr zufrieden und hoffe darauf, dass in Zukunft noch mehr in diese Richtung unternommen wird.


Comments


Write comment

You need to sign in first.