Re: [PATCH - RFC] allow setting vm_dirty below 1% for large memorymachines

From: Andrew Morton
Date: Thu Jan 11 2007 - 17:49:14 EST


On Thu, 11 Jan 2007 14:35:06 -0800 (PST)
dean gaudet <dean@xxxxxxxxxx> wrote:

> actually a global dirty_ratio causes interference between devices which
> should otherwise not block each other...
>
> if you set up a "dd if=/dev/zero of=/dev/sdb bs=1M" it shouldn't affect
> write performance on sda -- but it does... because the dd basically
> dirties all of the "dirty_background_ratio" pages and then any task
> writing to sda has to block in the foreground... (i've had this happen in
> practice -- my hack fix is oflag=direct on the dd... but the problem still
> exists.)

yeah. Plus your heavy-dd-to-/dev/sda tends to block light-writers to
/dev/sda in perhaps disproportionate ways.

This is on my list of things to look at. Hah.

> i'm not saying fixing any of this is easy, i'm just being a user griping
> about it :)

It's rather complex, I believe. Needs per-backing-dev dirty counts (already
in -mm) plus, I suspect, per-process dirty counts (possibly derivable from
per-task-io-accounting) plus some tricky logic to make all that work along
with global dirtiness (and later per-node dirtiness!) while meeting all the
constraints which that logic must satisfy.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/