HAMMER 43C/Many: Performance cleanup
authorMatthew Dillon <dillon@dragonflybsd.org>
Tue, 13 May 2008 05:04:39 +0000 (05:04 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Tue, 13 May 2008 05:04:39 +0000 (05:04 +0000)
commit4e97774c93ef63c9e7a21acdd292502818663133
tree383d7878cba397b25bad61a740549c46287cd071
parent18bc5e7cbc640e4531aa0b50ed72cd03a0129e6d
HAMMER 43C/Many: Performance cleanup

* Do not put an inode on the sync list when it becomes inactive, unless
  it no longer has filesystem visibility.  This greatly reduces the amount
  of cycling which occurs on the inode B-Tree element, and greatly reduces
  spurious backend flushes.

  This change results in a major performance improvement for both reads
  and writes in a massively parallel I/O test (blogbench).  Write
  performance more then doubles and read performance increases by 20%.

* Lock the freemap free code.

* Remove some of the debug code.
sys/vfs/hammer/hammer_btree.c
sys/vfs/hammer/hammer_freemap.c
sys/vfs/hammer/hammer_inode.c
sys/vfs/hammer/hammer_ondisk.c