DragonFlyBSD/src 1159c75sys/vfs/hammer2 hammer2_io.c hammer2_admin.c

hammer2 - Performance work

* Implement immediate (async) flush follow-through when OS requests
  it, with write-clustering support at the device level if enabled.
  Write-clustering support at the device level is disabled by default
  because H2 already uses a fairly large and efficient 64K block size.

* Change the XOP dispatch for strategy functions.  Further partition
  strategy functions by read or write to prevent reads from getting
  stuck behind long write chains.

  Also do not span-out I/O related to a single inode across too many
  XOP threads as doing so creates a massive amount of unnecessary
  lock contention.

* Significantly improves concurrent filesystem ops and I/O and
  significantly improves sequential filesystem write I/O.
DeltaFile
+29-31sys/vfs/hammer2/hammer2_io.c
+36-7sys/vfs/hammer2/hammer2_admin.c
+3-0sys/vfs/hammer2/hammer2_vfsops.c
+2-0sys/vfs/hammer2/hammer2.h
+70-384 files

UnifiedSplitRaw