Zbr's days.

About :: TODO :: Blog :: RSS :: Old blog :: Projects :: GIT :: Gallery :: Notes

Wed, 26 Mar 2008

Added maildir benchmark results.

The simulation works on each filesystem in the following stages:

  1. The empty filesystem is created and mounted.
  2. The directory structure is created, with no files.
  3. A single delivery simulator and retrieval simulator are run simultaneously. The script waits for each of the simulators to finish, and then runs the sync command before proceding to the next step.
  4. The above step is repeated with 2, 4, 8, and then 16 delivery simulators.
Delivery Simulator.
The delivery simulator does actual maildir deliveries to the given directory:
  1. It writes a file with a unique file name to the tmp subdirectory.
  2. It fsyncs the newly written file.
  3. It renames the file into the new subdirectory.
  4. It fsyncs the new subdirectory (to ensure that directory is actually on disk, as most Linux filesystems don't automatically perform this action during the rename).
More details on original page.

Briefly saing, it is multithreaded maildir simulation.
And results are quite different compared to for example postmark: very good results from xfs, jfs and reiserfs.
There are no ext2 and btrfs filesystems, since perl's fsync says that filedescriptor opened there is invalid: Invalid argument at /root/fs_bench/maildir_fsbench/fsbench/fake-deliver line 38.
Interested reader can check sources and show me a problem, but ext2 worked pretty fine with 2.6.20 kernel and to date glibs/perl/whatever was in Debian.

Anyway, results can be found at contest homepage.

Now all testing is over.
Main conclusion: things got worse compared to 2.6.20 and there was no major breakthrough in filesystem development at least from perfomance point of view.

/devel/fs :: Link / Comments ()