git: kernel - Enhance getcacheblk() (improve saturated write performance (3)).
Matthew Dillon
dillon at crater.dragonflybsd.org
Tue Jan 11 01:25:47 PST 2011
commit 72d6a027d96b30c52d242ce162021efcecfe2bb9
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Tue Jan 11 01:19:55 2011 -0800
kernel - Enhance getcacheblk() (improve saturated write performance (3)).
* Change getcacheblk() to use getblk() instead of findblk() when the
block size is known, allowing a cached buffer to be reinstantiated
from VM backing store in the MPSAFE path.
Well, mostly MPSAFE, the vm_token is still acquired, but this is still
much faster than what HAMMER does when the buffer is not in-cache.
* This more than doubles blogbench performance w/HAMMER and further reduces
concurrent read vs write conflicts.
Summary of changes:
sys/kern/vfs_bio.c | 39 ++++++++++++++++++++++++++++++---------
sys/sys/buf.h | 2 +-
sys/vfs/hammer/hammer_vnops.c | 2 +-
sys/vfs/tmpfs/tmpfs_vnops.c | 2 +-
4 files changed, 33 insertions(+), 12 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/72d6a027d96b30c52d242ce162021efcecfe2bb9
--
DragonFly BSD source repository
More information about the Commits
mailing list