Lies and Damn Lies

Various Benchmarks I've done





Reiser can do really well, with a lot of threads.  ZFS does really well with one thread.  Solaris doesn't handles lots of threads well at all.

Click on the image for the full size graph.

 The  benchmark spawn N threads.  Each one creates, writes 200k to, reads 200k from, or deletes files.  The measurement is the total number of operations (create, read, write, unlink) per second spread out among all the threads.

To force disk io, fsync() is called after create and write.

If a run uses extended attributes, 4 extended attributes are set on the file via one syscall.  They are never read.  Looking at the more detailed timings, using exteded attributes makes open() and unlink() slower.  It's not just the time required to call attr_multif().  On Solaris, I'm just using one extended attribute and putting all 4 values in it.  Extended attributes on Solaris are way over-engineered.