DragonFly commits List (threaded) for 2009-08
DragonFly BSD
DragonFly commits List (threaded) for 2009-08
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

git: HAMMER - Massively improve performance

From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 19 Aug 2009 23:34:04 -0700 (PDT)

commit 710733a6b00f0ba91ca86de3ae8d642e7583dac3
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date:   Wed Aug 19 23:30:42 2009 -0700

    HAMMER - Massively improve performance
    * Now that write pipelining is controlled by ip->rsv_recs and now
      that we have write bursting in the BIOQ subsystem, we do not
      actually want to use bawrite() or cluster_write() because the bio
      could end up waiting for the disk for a long time, and it is locked
      for that entire period.  So go back to using bdwrite().
      This seriously improves HAMMER's ability to access files that were
      just written without having to wait for I/O to complete.
    * Reclaim (destroy) buffer cache buffers related to UNDO data, except
      for the UNDO block we will be needing again for the next flush.  We
      don't need to keep old undo buffers in the cache!  This improves
      HAMMER's memory footprint.

Summary of changes:
 sys/vfs/hammer/hammer.h         |    3 ++-
 sys/vfs/hammer/hammer_flusher.c |    8 ++++----
 sys/vfs/hammer/hammer_io.c      |   16 +++++++++++++---
 sys/vfs/hammer/hammer_ondisk.c  |    2 +-
 sys/vfs/hammer/hammer_recover.c |    6 +++---
 sys/vfs/hammer/hammer_undo.c    |   18 ++++++++++++++++++
 sys/vfs/hammer/hammer_vnops.c   |   10 +++++++++-
 7 files changed, 50 insertions(+), 13 deletions(-)


DragonFly BSD source repository

[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]