Commit b7d1200e authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] Tweak VM dirty thresholds

The below patch on 2.5.12 takes the 'dbench 32' throughput on a
1024 megabyte machine from 35 megs/sec up to 125 megs/sec.
That's on the second run.  The first run is much slower because
the ext2 bitmaps aren't in cache.

Presumably, s/60/80/ will take it even higher.
parent 6b7f1841
...@@ -219,7 +219,7 @@ static void __sync_list(struct list_head *head, int sync_mode, ...@@ -219,7 +219,7 @@ static void __sync_list(struct list_head *head, int sync_mode,
struct list_head * tmp; struct list_head * tmp;
LIST_HEAD(hold); /* Unready inodes go here */ LIST_HEAD(hold); /* Unready inodes go here */
while ((tmp = head->next) != head) { while ((tmp = head->prev) != head) {
struct inode *inode = list_entry(tmp, struct inode, i_list); struct inode *inode = list_entry(tmp, struct inode, i_list);
struct address_space *mapping = inode->i_mapping; struct address_space *mapping = inode->i_mapping;
int really_sync; int really_sync;
......
...@@ -29,12 +29,12 @@ ...@@ -29,12 +29,12 @@
/* /*
* Start background writeback (via pdflush) at this level * Start background writeback (via pdflush) at this level
*/ */
static int dirty_background_ratio = 30; static int dirty_background_ratio = 20;
/* /*
* The generator of dirty data starts async writeback at this level * The generator of dirty data starts async writeback at this level
*/ */
static int dirty_async_ratio = 45; static int dirty_async_ratio = 60;
/* /*
* The generator of dirty data performs sync writeout at this level * The generator of dirty data performs sync writeout at this level
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment