Re: Dateisystem-Performance: ext3 überrundet xfs??
On Sat, Aug 02, 2008 at 10:56:29AM +0200, Markus Schulz wrote:
> > Der Testparcour war ganz einfach: kopieren und löschen eines
> > "dreckigen" Debian-Kernel-Build-Trees, mit allen Objekt-Dateien etc,
> > zusammen 38755 Dateien, ca. 567MB. Keine Raffinessen, sync oder
> > cache flushes, einfach losgelegt und mit dem bash-Befehl "time" die
> > Zeit genommen.
> >
> > ext3-fs: /dev/hda1, 9GB (root-Partition)
> > xfs-fs: /dev/hda17, 2GB (extra Test-Partition)
>
> Nimm bitte eine FS-Benchmark ala Bonnie++ für solche Tests.
> Dein Testsetup sollte dann auch so aussehen, das du den Test erst mit
> ext3 auf der 2GB Partition machst und anschließend mit xfs. Nur dann
> hast du eine realistische Testumgebung.
Okay, guter Vorschlag, hab ich gemacht. Um dem Kerneltree-Szenario möglichst
nahe zu kommen, hab ich bonnie++ mit "-n 40:1024k:128k:2265" aufgerufen (d.h.
der "Metadata"-Test lief mit von 40.000 Dateien in 2265 Ordnern, zwischen 128k
und 1MB groß).
Gleich vorab das Fazit: die Performance unterscheidet sich in den meisten
Punkten nicht sehr, mit folgenden Ausnahmen:
* sequentielles Schreiben ist unter ext3 etwas schneller
* stat() ist mit xfs extrem viel schneller
(in der Tabelle: Spalte "Create/Read")
* Der Knüller: xfs bricht beim Erstellen und Löschen von Dateien total
zusammen. Aber wirklich!
Letzteres erklärt natürlich, warum das Manipulieren eines Kernel-Trees
unter xfs so eine Qual ist. Und übrigens deckt sich der ganze Befund
tendentiell auch mit dem (zweiten) Benchmark in der Linux Gazette[1],
dort brauchte xfs für Operationen auf dem Kernel-Tree (tar/untar,
löschen, kopieren) rund 3-4 mal so lang wie ext3.
Die Ergebnisse von bonnie++ im einzelnen:
zorro[bonnie-big]$ bon_csv2txt <xfs-hda17.log
Version 1.03d ------Sequential Output------ --Sequential Input- --Random-
-Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
zorro 496M 13467 97 24201 16 13498 5 25840 97 61586 15 225.2 1
zorro 496M 12685 98 26599 14 13809 6 25258 94 61635 17 211.2 0
zorro 496M 13100 97 26847 27 14016 6 27893 93 61803 21 230.7 0
zorro 496M 12852 98 26766 28 13785 6 26956 95 61699 15 214.3 0
zorro 496M 14824 97 27319 28 14024 6 24407 94 61866 15 217.6 0
zorro 496M 13691 97 27451 29 13929 7 24142 94 61588 17 224.8 0
------Sequential Create------ --------Random Create--------
-Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files:max:min /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
zorro 40:1024:0 254 4 80787 100 261 5 248 7 78431 99 108 2
zorro 40:1024:0 265 4 71685 85 266 3 241 8 15785 46 108 2
zorro 40:1024:0 255 4 75869 93 272 3 248 7 18659 52 107 2
zorro 40:1024:0 264 4 74675 91 270 3 241 7 34344 99 106 2
zorro 40:1024:0 252 4 81361 98 263 3 244 8 33197 98 109 2
zorro 40:1024:0 265 4 75597 92 269 5 242 7 79818 96 109 2
zorro[bonnie-big]$ ^xfs^ext3
bon_csv2txt <ext3-hda17.log
Version 1.03d ------Sequential Output------ --Sequential Input- --Random-
-Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
zorro 496M 21495 96 27376 36 13530 14 17010 97 61352 20 235.3 0
zorro 496M 11885 96 31874 49 13893 11 22785 90 61492 15 241.2 0
zorro 496M 12172 96 31303 49 13843 10 22711 91 61352 25 237.4 0
zorro 496M 10668 96 32166 53 14073 8 22902 92 61081 15 237.9 0
zorro 496M 12965 96 30694 22 14172 7 15442 96 61367 32 235.2 0
zorro 496M 17792 96 32742 30 13514 8 13024 97 61274 32 239.1 0
------Sequential Create------ --------Random Create--------
-Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files:max:min /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
zorro 40:1024:0 11158 69 7608 11 6081 21 8674 54 7443 10 4077 16
zorro 40:1024:0 8004 49 7742 12 5652 20 9339 63 6618 13 4208 16
zorro 40:1024:0 8587 54 7596 12 5530 21 6000 69 6928 12 3191 25
zorro 40:1024:0 8396 53 6920 17 4135 37 4834 74 6133 20 3175 31
zorro 40:1024:0 7399 61 6270 23 4129 37 4813 74 5852 16 3879 23
zorro 40:1024:0 9219 59 7574 12 5586 22 10214 69 6827 9 4172 17
Ich hätte nie gedacht, daß ein so etabliertes Dateisystem bei einer so
einfachen Sache derart zusammenbrechen könnte. Erstaunlich.
Nikolaus
[1] http://linuxgazette.net/122/TWDT.html#piszcz
Reply to: