lkml.org 
[lkml]   [2008]   [Nov]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH -mm] mm: fine-grained dirty_ratio_pcm and dirty_background_ratio_pcm (v2)
    On Mon, 10 Nov 2008 23:03:13 +0100
    Andrea Righi <righi.andrea@gmail.com> wrote:

    > On 2008-11-10 22:12, Andrew Morton wrote:
    > > On Mon, 10 Nov 2008 21:58:28 +0100
    > > Andrea Righi <righi.andrea@gmail.com> wrote:
    > >
    > >> The current granularity of 5% of dirtyable memory for dirty pages writeback is
    > >> too coarse for large memory machines and this will get worse as
    > >> memory-size/disk-speed ratio continues to increase.
    > >>
    > >> These large writebacks can be unpleasant for desktop or latency-sensitive
    > >> environments, where the time to complete each writeback can be perceived as a
    > >> lack of responsiveness by the whole system.
    > >>
    > >> Following there's a similar solution as discussed in [1], but a little
    > >> bit simplified in order to provide the same functionality (in particular
    > >> to avoid backward compatibility problems) and reduce the amount of code
    > >> needed to implement an in-kernel parser to handle percentages with
    > >> decimals digits.
    > >>
    > >> The kernel provides the following parameters:
    > >> - dirty_ratio, dirty_background_ratio in percentage (1 ... 100)
    > >> - dirty_ratio_pcm, dirty_background_ratio_pcm in units of percent mille (1 ... 100,000)
    > >
    > > hm, so how long until dirty_ratio_pcm becomes too coarse...
    > >
    > > What happened to the idea of specifying these in units of kilobytes?
    >
    > The conclusion was that with units in KB requires much more complexity
    > to keep in sync the old dirty_ratio (and dirty_background_ratio)
    > interface with the new one.
    >
    > The KB limit is a static value, the other depends on the dirtyable
    > memory. If we want to preserve the same behaviour we should do the
    > following:
    >
    > - when dirty_ratio changes to x:
    > dirty_amount_in_bytes = x * dirtyable_memory / 100.
    >
    > - when dirty_amount_in_bytes changes to x:
    > dirty_ratio = x / dirtyable_memory * 100
    >
    > But anytime the dirtyable memory changes (as well as the total memory in
    > the system) we should update both values accordingly to preserve the
    > coherency between them.

    OK.

    > I wonder if setting also PERCENT_PCM (that is 1% expressed in
    > fine-grained units) as a parameter could be a better long-term solution.
    > And also use another name for it, because in this case this would be not
    > a milli-percent value anymore.

    How about we forget the percentage thing and create
    /proc/sys/vm/dirty_ratio_millionths? That will give us a few more years
    of moores_law(memory size)/mores_law(disk speed) too..


    \
     
     \ /
      Last update: 2008-11-10 23:17    [W:0.024 / U:62.108 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site