Messages in this thread | | | Date | Tue, 15 Jun 2010 11:18:58 +0100 | From | Mel Gorman <> | Subject | Re: [PATCH 11/12] vmscan: Write out dirty pages in batch |
| |
On Mon, Jun 14, 2010 at 05:13:37PM -0400, Rik van Riel wrote: > On 06/14/2010 07:17 AM, Mel Gorman wrote: >> Page reclaim cleans individual pages using a_ops->writepage() because from >> the VM perspective, it is known that pages in a particular zone must be freed >> soon, it considers the target page to be the oldest and it does not want >> to wait while background flushers cleans other pages. From a filesystem >> perspective this is extremely inefficient as it generates a very seeky >> IO pattern leading to the perverse situation where it can take longer to >> clean all dirty pages than it would have otherwise. > > Reclaiming clean pages should be fast enough that this should > make little, if any, difference. >
Indeed, this was a bit weak. The original point of the patch was to write contiguous pages belonging to the same inode when they were encountered in that batch which made a bit more sense but didn't work out at first pass.
>> This patch queues all dirty pages at once to maximise the chances that >> the write requests get merged efficiently. It also makes the next patch >> that avoids writeout from direct reclaim more straight-forward. > > However, this is a convincing argument :) >
Thanks.
>> Signed-off-by: Mel Gorman<mel@csn.ul.ie> > > Reviewed-by: Rik van Riel <riel@redhat.com> >
Thanks again :)
-- Mel Gorman Part-time Phd Student Linux Technology Center University of Limerick IBM Dublin Software Lab
| |