Journaling Filesysteme unter Linux

Performance


[ Seminar Linux und Apache ] ... [ Inhaltsübersicht ] ... [ Verfügbarkeit ]

Übersicht


Allgemeines

Testumgebung: Pentium III, 16 MB RAM, 2 GB Festplatte, Linux RedHat 6.2


Bonnie++

Benchmarkprogramm: bonnie++ (http://www.coker.com.au/bonnie++)

Test-Aufruf:
	bonnie++ -d/work1 -s10 -r4 -u0

	-s10  : test benötigt 10 MB
	-d    : im Filesystem /work1
	-r    : RAM - Belegung in MB
	-u    : der User (hier root)
Die Ergebnisse im einzelnen:

Benchmark - Test bonnie++ [ 3]
FS Size:
Chunk Size
Sequential Output Sequential Intput Random Seeks
per Char Block Rewrite per Char Block
    KB/sec % CPU KB/sec % CPU KB/sec % CPU KB/sec % CPU KB/sec % CPU #/sec % CPU
ext2 10 MB 1.471 97 14.813 67 1.309 14 1.506 94 4.889 15 309,8 10
ext3 10 MB 1.366 98 2.361 38 1.824 22 1.482 94 4.935 14 317,8 10
xfs 10 MB 1.206 94 9.512 77 1.351 33 1.299 98 4.779 80 229,1 11
ReiserFS 10 MB 1.455 99 4.253 31 2.340 26 1.477 93 5.593 26 174,3 5
Zwei Werte-Gruppen werden hier angegeben. Zum einen die Übertragungs-Geschwindigkeit (Lesen + Schreiben) des Dateisystems in KB/sec und die CPU-Belastung in %. Je größer die Geschwindigkeit, um so besser das Dateisystem. Genau umgekehrt ist es bei der CPU-Belastung.
Die positiv herausragenden Werte sind hier grün unterlegt, die negativen jeweils rot.

Sequential Output Sequential Intput
Per Char: geschrieben wird mit putc() Per Char: gelesen wird mit getc()
Block : geschrieben wird mit write(2) Block : gelesen wird mit read(2)
Rewrite: gelesen mit read(2) und geschrieben mit write(2)  
(Eine genauere Beschreibung der einzelnen Werte findet man unter http://www.coker.com.au/bonnie++/readme.html)



Benchmark - Test bonnie++ [ 3]
FS Num Files Sequential Create Random Create
Create Read Delete Create Read Delete
    /sec % CPU /sec % CPU /sec % CPU /sec % CPU /sec % CPU /sec % CPU
ext2 16 94 99 278 99 492 97 95 99 284 100 93 41
ext3 16 89 98 274 100 458 96 93 99 288 99 97 45
xfs 16 92 99 251 96 436 98 91 99 311 99 90 41
ReiserFS 16 1.307 100 8.963 100 1.914 99 1.245 99 9.316 100 1.725 100


Wie man sehen kann ist das ResierFS überwältigend überlegen beim Erzeugen von Dateien. Es ist um den Faktor 10 schneller (Bereich Sequential Create, Random Create). Bei der reinen Zugriffsgeschwindigkeit ist ReiserFS nicht weit von den anderen Systemen entfernt. Zwischen diesen gibt es dann auch keine entscheidenden Unterschiede.

Nach oben

Mongo

Als weiterer Benchmark-Test wurde Mongo (ein Test vom ReiserFS-Hersteller Namesys) benutzt.
Die Ergebnisse im einzelnen:

Benchmark - Test Mongo [ 3]
  Ext3fs XFS ReiserFS
File-Größe 100 bytes 1.000 bytes 10.000 bytes 100 bytes 1.000 bytes 10.000 bytes 100 bytes 1.000 bytes 10.000 bytes
Create 90,07 30,68 27,13 267,86 57,94 25,99 53,05 36,38 22,27
Fragm. 1,32 1,38 1,44 1,02 1,01 1,02 1,00 1,03 1,05
Copy 239,02 75,21 55,27 744,51 149,49 55,73 126,97 84,02 43,24
Fragm. 1,32 1,38 1,44 1,03 1,01 1,02 1,80 1,43 1,12
Slinks 0,00 16,68 1,33 203,54 29,59 2,51 105,71 19,29 1,43
Read 782,75 225,74 40,51 1.543,93 348,99 50,20 562,53 409,45 56,34
Stats 108,65 25,60 2,34 262,25 46,41 1,99 225,32 89,23 3,52
Rename 67,26 16,11 0,99 205,18 33,57 1,10 70,72 20,69 1,25
Delete 23,80 6,04 3,40 389,79 64,90 8,99 85,51 18,21 1,84
(Die Angaben sind in Sekunden)

File Size 100 bytes File Size 1.000 bytes File Size 10.000 bytes
ca. 69.000 files ca. 12.000 files ca. 2.300 files
ca. 240 dirs ca. 43 dirs ca. 31 dirs


An diesen Tabellen kann man sehen, dass ext3 bei Delete und Rename die Nase vorne hat, ReiserFS allerdings beim Create und Copy gewinnt.
Außerdem fällt auf, dass Reiser (wie erwartet) bei den kleineren Files besser abschneidet.

Nach oben

[ Seminar Linux und Apache ] ... [ Inhaltsübersicht ] ... [ Verfügbarkeit ]