2010-11-01 20:25:08

by Dimitrios Apostolou

[permalink] [raw]
Subject: Re: 2.6.36 io bring the system to its knees

Hello,

On Sun, 31 Oct 2010 09:51:32 +0800, Wu Fengguang wrote:
> It may also help to lower the dirty ratio.
>
> echo 5 > /proc/sys/vm/dirty_ratio
>
> Memory pressure + heavy write can easily hurt responsiveness.
>
> - eats up to 20% (the default value for dirty_ratio) memory with dirty
> pages and hence increase the memory pressure and number of swap IO

My experience has been different with that. Wouldn't it make more sense
to _increase_ dirty_ratio (to 50 lets say) and at the same time decrease
dirty_background_ratio? That way writing to disk starts early, but the
related apps stall waiting for I/O only when dirty_ratio is reached.


Thanks,
Dimitris

>
> - the file copy makes the device write congested and hence makes
> pageout() easily blocked in get_request_wait()
>
> As a result every application may be slowed down by the heavy swap IO
> when page fault as well as being blocked when allocating memory (which
> may go into direct reclaim and then call pageout()).
>
> Thanks,
> Fengguang


2010-11-02 01:20:12

by Fengguang Wu

[permalink] [raw]
Subject: Re: 2.6.36 io bring the system to its knees

On Mon, Nov 01, 2010 at 01:09:34AM +0000, Dimitrios Apostolou wrote:
> Hello,
>
> On Sun, 31 Oct 2010 09:51:32 +0800, Wu Fengguang wrote:
> > It may also help to lower the dirty ratio.
> >
> > echo 5 > /proc/sys/vm/dirty_ratio
> >
> > Memory pressure + heavy write can easily hurt responsiveness.
> >
> > - eats up to 20% (the default value for dirty_ratio) memory with dirty
> > pages and hence increase the memory pressure and number of swap IO
>
> My experience has been different with that. Wouldn't it make more sense
> to _increase_ dirty_ratio (to 50 lets say) and at the same time decrease
> dirty_background_ratio? That way writing to disk starts early, but the
> related apps stall waiting for I/O only when dirty_ratio is reached.

50% dirty ratio may help before the system goes thrashing (writing
processes will be throttled less/later). However Aidar is seeing hours
of unresponsiveness with heavy IO, in this case large dirty ratio
won't help reduce the throttling any more.

Thanks,
Fengguang