git: HAMMER VFS - Improve saturated write performance (2).

看板DFBSD_commit作者時間15年前 (2011/01/11 17:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit 1afb73cf098b11a9457b91c7e5f165f66efeceb6 Author: Matthew Dillon <dillon@apollo.backplane.com> Date: Mon Jan 10 23:17:34 2011 -0800 HAMMER VFS - Improve saturated write performance (2). * Change the dirty io buffer lists from TAILQs to Red-Black trees. * The dirty io buffers are sorted by disk address on a flush-group by flush-group basis and I/O writes are initiated in sorted order. This significantly improves write I/O throughput to normal HDs. Essentially what is happening here is that the sheer number of unsorted buffers are overwhelming the HDs own caches. Having HAMMER pre-sort the buffers, of which there can be upwards of 100MBs worth, allow the HD to write more optimally. Summary of changes: sys/vfs/hammer/hammer.h | 18 +++++---- sys/vfs/hammer/hammer_flusher.c | 24 ++++++------ sys/vfs/hammer/hammer_io.c | 76 +++++++++++++++++++++++++------------- sys/vfs/hammer/hammer_ondisk.c | 20 +++++----- sys/vfs/hammer/hammer_vfsops.c | 10 +++--- 5 files changed, 87 insertions(+), 61 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/1afb73cf098b11a9457b91c7e5f165f66efeceb6 -- DragonFly BSD source repository
文章代碼(AID): #1DB2ENFK (DFBSD_commit)