Kernel-Tuning für Linux

Kernel-Kompilierung als Benchmark

Die Kompilierung eines Kernels eignet sich hervorragend als Benchmark. Zu den Faktoren, die hier die Geschwindigkeit beeinflussen, zählen neben der schieren CPU-Leistung auch die Geschwindigkeit von Festplatte und Dateisystem sowie die Performance des RAM und der Speicherverwaltung.

Jedoch lassen sich die Ergebnisse nur dann vergleichen, wenn in allen getesten Konfigurationen derselbe Kernel mit identischen Optionen erstellt wird. Dazu kann man im Regelfall die Standardeinstellungen des Distributors einsetzen. Im Fall von SuSE finden sich diese etwa in der Datei /boot/vmlinuz.config. Bei entsprechender Einstellung des Kernels lagern zudem in der Datei /proc/config.gz die Settings für die momentan laufende Variante des Betriebssystemkerns. Vor Gebrauch gilt es, diese Datei in ein beliebiges Verzeichnis zu kopieren und zu entpacken.

Um die gewünschten Einstellungen zu aktivieren, starten Sie aus dem Verzeichnis /usr/src/linux mit make xconfig die Kernelkonfiguration. Dort laden Sie dann mit Hilfe des Buttons Load Configuration from File die fragliche Konfigurationsdatei. Bei SuSE Linux können Sie also /boot/vmlinuz oder ersatzweise die kopierte und entpackte /proc/config.gz angeben. Über den Button Save and Exit speichern Sie die Einstellungen anschließend als Vorgabe für den nächsten Kompilationslauf ab.

Nun genügt beispielsweise ein

time make dep clean bzImage modules

um ein Messergebnis zu generieren. Bei dem von uns verwendeten SuSE Linux 7.3 ist der Rechner damit eine gute halbe Stunde beschäftigt.