Mein neues Gentoo wollte ich gleich mal ein paar Performance-Tests unterziehen. Dazu gehört auch die Wahl des richtigen Dateisystems, zumal mein /usr/portage -Verzeichnis auf einer SSD liegt. Btrfs klang für mich nach einer guten Wahl, bleibt noch der Vergleich diverser Optionen.
Testaufbau
Für die Tests wird der Befehl eix-sync auf einem leeren Dateisystem abgesetzt und der Speicherverbrauch begutachtet. Vorteil von eix-sync sind neben der guten Statistik am Ende auch das praxisnahe Verhalten - kaum ein Mensch wird einen neuen Portage nicht durch eix indizieren lassen.
Test 1: Vanilla-Btrfs
Testszenario
Das Dateisystem wird direkt ohne Angabe von Optionen gemountet.mkfs.btrfs -L "Portage" /dev/sdb3
mount /dev/sdb3 /usr/portage
eix-sync
[…]
* Benötigte Zeit:
255 Sekunden für syncen
6 Sekunden für eix-update
1 Sekunden für eix-diff
262 Sekunden insgesamt
df -h /usr/portage/
Dateisystem Size Used Avail Use% Eingehängt auf
/dev/sdb3 10G 577M 7,9G 7% /usr/portage
Test 2: Mit Mountoptionen
Testszenario
Folgende Mountoptionen wurden werwendet:- noatime Ausschalten der Zugriffszeit, da es unnötige (performancefressende) Schreiboperationen zur Folge hat und diese Informationen für das Portage eh nicht gebraucht werden
- compress=lzo Einfach mal ein kleines Experiment von mir. Mal schauen, wie sich das Portage verkleinern lässt, und welche folgen das auf die Performance hat. Benötigt Kernel 2.6.39 oder höher!
- ssd Schaltet SSD-spezifische Optimierungen im Dateisystem an. Diese sind leider nicht näher benannt.
- noacl Deaktiviert die Möglichkeit, Zugriffe über Acces Control Lists zu beschränken. Wird auf dem Portage bei mir eh nicht gebraucht, da nur der Root-Account Schreib- und die Benutzeraccounts Lesezugriff erhalten sollen.
umount /usr/portage
mkfs.btrfs /dev/sdb3
mount -o noatime,compress=lzo,ssd,noacl /dev/sdb3 /usr/portage/
eix-sync
[…]
* Benötigte Zeit:
154 Sekunden für syncen
5 Sekunden für eix-update
1 Sekunden für eix-diff
160 Sekunden insgesamt
df -h /usr/portage/
Dateisystem Size Used Avail Use% Eingehängt auf
/dev/sdb3 10G 427M 8,0G 5% /usr/portage
Mein Fazit
»SSD-Option« klingt für mich so, als wenn es die SSD-Lebensdauer etwas erhöhen könnte. Alleine dafür lohnt sich jetzt schon der Einsatz von btrfs, zumal ein Datenverlust der Portage-Partition wirklich nicht problematisch ist. Btrfs muss allerdings in den Kernel einkompiliert werden. Wer Gentoo nutzt, sollte damit aber zurechtkommen. Wer also kann: Anschalten!