File System Benchmarks

来源:百度文库 编辑:神马文学网 时间:2024/05/10 19:17:53

LinuxFileSystem Benchmarks


Preface

There are lies, damn lies andbenchmarks... Only a fool would base his/her decision on benchmarkresults from a single source.
I recommend you download the following script and run your ownbenchmarks, in your own enviroment just to be sure.

Because nosingle file system is the best in all situations, determining whichfile system is the best for your application is not always easy. However, as you will see for yourself, picking the right file systemcan offer performance gains in excess of 95%.

As a starting point, here are a few questions to ask yourself:
1. Do you want a journaling file system or not? (ie: Can you affordlong FSCK times?)
2. Is yourapplication CPU limited, or I/O limited?

If your application is CPU limited, obviously you want to choose a filesystem that uses the least amount of CPU as possible. On the otherhand, if your application is I/O limited, you want to choose a filesystem that runs all the tests in the shortest amount of time,regardless of the CPU usage. If your not sure, or want the "best bangfor your buck", your decision is not so clear cut. Also keep in mindthat some file systems have obvious strengths or weaknesses, offeringmuch better performance in very specific applications. (ie: Whenworking with many small files, or many large files.)

Summary

All benchmarks were run with the v2.6kernel series. Please do not assume you will see similar results withv2.4 series kernels!

Best bang for your buck - JFS orXFS:
While notthe fastest file systems, both of them consistently perform close toEXT2, while using minimal CPU. XFS seems to be faster over a widerrange of benchmarks, however it does use slightly more CPU than JFS.While JFS really starts to slow down with lots of files.

For I/O limited applications - ReiserFSv4, XFS, or ReiserFS v3:
Thiscategory isn't as clear cut as the others, it really depends on howmany files, and what the size of the files are.

ReiserFS v4 is by far the fastestfile system benchmarked here, but keepin mind it is still *EXPERIMENTAL*. However its performance in theBonnie++ benchmark deserves recognition, up to 95% faster than EXT3,and 65% faster than ReiserFS v3 is mighty impressive. Though the IOZonebenchmarks are not so convincing, there still seem to be some issues towork out. ReiserFS v4 will definiately be worth while keeping an eyeon, especially considering some of the exciting new features it offers.Hopefully it gets included in Linus's v2.6 kernel tree.

If your application primarily uses lots of smaller files, ReiserFS v3is the way to go. If your application uses more medium to larger files,and not a whole lot of them, XFS would most likely be a wise choice.

For CPU limitedapplications - JFS:
JFS is the clear winner here. If yourlooking for the absolute least CPU usage, JFS takes the cake.

SCSI vs. IDE:
Is money an object? If your answer isno, buy yourself SCSI drives, and send me a couple while your at it. ;)

If you're like most of us, and money is an object, SCSI has a hard timecomparing to IDE. As you can see from the following benchmarks, a 10KRPM SCSI drive, that hdparm reports can read data up to 45% faster thanits 7200 RPM IDE counterpart, in reality only gets you on average a 20%performance gain, depending on the file system.

ReiserFS v4 - gains the most at up to 50%
JFS and EXT3 - gain the least, at around 5-20%, shockingly JFS was evenslower in one run.

Considering for the same disk sizes (72Gb vs 72Gb), SCSI (includingcontroller) will cost about 5x more than IDE, you could easily build anIDE RAID array that would make up for any reliability short comings IDEmay have, and still cost you considerably less. Though I only havepersonal experience to base this off, and no hard data, SCSI disks aremuch more reliable than IDE, especially if properly cooled.

If in your opinion a 20% average performance gain is worth paying 5xmore for, please refer back to the first line in this section.

AMD Opteron 240 - 512Mb RAM Results

SCSI - 10K RPM
2.6.0-test9 - Bonnie++ | IOZone
2.6.0-test8 - Bonnie++ | IOZone

IDE - 7200 RPM
2.6.0-test8 - Bonnie++ | IOZone
2.6.0-test7 - Bonnie++ | IOZone
2.6.0-test5 - Bonnie++ | IOZone

Combined
  All - Bonnie++ | IOZone
SCSI vs. IDE Bonnie++ | IOZone

Hardware used

PII-450 - 512Mb RAM Results
Bonnie++ | IOZone
Hardware used

Download the script(s) used to generate the abovereports.

fs_bench.tar.gz

Requires: Python, MySQL, Bonnie++/IOZone

Unrelated Goodies: Add powerful ACL capability to your webapplication.

This web server:
model name      : AMD-K6(tm) 3D processor
cpu MHz : 500.020
cache size : 64 KB
MemTotal: 254860 kB
laughs in the face of the SlashdotEffect.

Email: NetNation Communications

Co