Re: Change in default vm_dirty_ratio

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Wed, 20 Jun 2007, Arjan van de Ven wrote:
> 
> maybe that needs to be fixed? If you stopped dirtying after the initial
> bump.. is there a reason for the kernel to dump all that data to the
> disk in such a way that it disturbs interactive users?

No. I would argue that the kernel should try to trickle things out, so 
that it doesn't disturb anything, and a "big dump" becomes a "steady 
trickle".

And that's what "vm_dirty_ratio" is all about.

> so the question maybe is.. is the vm tunable the cause or the symptom of
> the bad experience?

No, the vm tunable is exactly what it's all about.

Do a big "untar", and what you *want* to see is not "instant dump, 
followed by long pause". 

A much *smoother* behaviour is generally preferable, and most of the time 
that's true even if it may be lower throughput in the end!

Of course, "synchronous writes" are *really* smooth (you never allow any 
dumps at *all* to build up), so this is about a balance - not about 
"perfect smoothness" vs "best throughput", but about a heuristic that 
finds a reasonable middle ground.

There is no "perfect". There is only "stupid heuristics". Maybe the 
"vm_dirty_ratio" is a bit *too* stupid, but it definitely is needed in 
some form.

It can actually be more than just a "performance" vs "smoothness" issue: 
the 40% thing was actually a *correctness* issue too, back when we coutned 
it as a percentage of total memory. A highmem machine would allow 40% of 
all memory free and it was all in low memory, and that literally caused 
lockups.

So the dirty_ratio is not *only* about smoothness, it's also simply about 
the fact that the kernel must not allow too much memory to be dirtied, 
because that leads to out-of-memory deadlocks and other nasty issues. So 
it's not *purely* a tunable. 

		Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux