Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755973AbXH0LdA (ORCPT ); Mon, 27 Aug 2007 07:33:00 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755211AbXH0Lcx (ORCPT ); Mon, 27 Aug 2007 07:32:53 -0400 Received: from smtp.ustc.edu.cn ([202.38.64.16]:49481 "HELO ustc.edu.cn" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with SMTP id S1751053AbXH0Lcw (ORCPT ); Mon, 27 Aug 2007 07:32:52 -0400 Message-ID: <388214369.05937@ustc.edu.cn> X-EYOUMAIL-SMTPAUTH: wfg@mail.ustc.edu.cn Message-Id: <20070827112152.816663278@mail.ustc.edu.cn> User-Agent: quilt/0.46-1 Date: Mon, 27 Aug 2007 19:21:52 +0800 From: Fengguang Wu To: Chris Mason Cc: Andrew Morton Cc: David Chinner Cc: Michael Rubin Cc: linux-kernel@vger.kernel.org Subject: [PATCH 0/3] [RFC][PATCH] clustered writeback Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1258 Lines: 32 Chris, This is one possible implementation of the clustered writeback idea. It runs OK on ext3 (compiling, syncing, etc.). The patch is based on 2.6.23-rc3-mm1 and the writeback patches here: http://lkml.org/lkml/2007/8/19/10 By default, with many dirty inodes, it works as follows: - store dirty inodes in a radix tree, indexed by their inode numbers - sweep the whole inode number space in 25s and do it in 5 times - each time we walk only 1/5 of the inode number space - pull all inodes with dirty-age larger than 5s to the io dispatching queue Because it does the work in small batches of 10 inodes, when the system has <=10 dirty inodes, its behavior will reduce to: - do a full sweep *at once* on every 25s Which means the disk will flicker once every 25s, not bad :) The implications for the majority users could be: - medium-to-heavy writes becomes less seeky - dirty inodes are getting synced earlier(before: 30s; now: 5-30s) - less panic for the 'atime' mount option (a future work) Fengguang -- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/