Please help me tune FreeBSD for

Sean Chittenden sean at
Fri Oct 24 15:27:46 PDT 2003

> Please also tell me if you have suggestions for other benchmarks
> that say something about the scalability of an operating system,
> that I could (and should) include in my benchmark suite.

>From a database perspective, I have two benchmarks that I'd be
interested in seeing.

1) Time required to read a frequently accessed page that has been
   mmap()'ed.  As you state, it takes FreeBSD longer to mmap() the
   first page, but I'd like to see the benefit for the startup time
   documented in a benchmark.  Presumably, the extra time required to
   load the first page is worth something.

2) Time required to read a frequently accessed page that has not been
   mmap()'ed (ie, raw read() IO).  I'd like to know how fast each OS's
   file system cache is.

A few other comments about your benchmarking (which are really great
to have, thank you!):

1) Are you using the most recent version of FreeBSD-CURRENT?  If so,
   I'd be curious to have libpthreads/libkse benchmarked.  Time to
   spawn a new thread and time required to join ten threads.
   Something like that would be quasi-useful.

2) You state in your mmap benchmark section:

   "As you can see, Linux 2.4 appears to scale O(n), while Linux 2.6
   is O(1). FreeBSD looks to be much faster than Linux 2.6, but you
   need to keep in mind that FreeBSD took an extraordinary time to do
   the actual mmap, so this good result does not save the day for

   I would disagree in that it is the common case for an mmap()'ed
   page to be simultaneously mmap()'ed by other processes (think
   Apache serving a busy homepage: each proc is mmap()'ing the same
   file).  I'd imagine that FreeBSD would win in a performance test of
   this nature because of the work it did when it mmap()'ed the first
   page, therefore think that this proves that FreeBSD is justified in
   the extra time that it takes when mmap()'ing a new page.

3) FreeBSD isn't finished in terms of its locking.  That said, these
   benchmarks really impress me that even though many subsystems are
   still under the Giant lock, FreeBSD 5.X performs as well, if not
   better than Linux 2.6.


Sean Chittenden

More information about the freebsd-performance mailing list