[lkml]   [2006]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Subject[PATCH 0/4] Lumpy Reclaim V3
    This is a repost of the lumpy reclaim patch set.  This is
    basically unchanged from the last post, other than being rebased
    to 2.6.19-rc2-mm2. This has passed basic stress testing on a range
    of machines here.

    [Sorry for the delay reposting, I had a test failure and needed
    to confirm it was not due to lumpy before posting.]

    As before, I have left the changes broken out for the time being
    so as to make it clear what is the original and what is my fault.
    I would expect to roll this up before acceptance.


    === 8< ===
    Lumpy Reclaim (V3)

    When we are out of memory of a suitable size we enter reclaim.
    The current reclaim algorithm targets pages in LRU order, which
    is great for fairness but highly unsuitable if you desire pages at
    higher orders. To get pages of higher order we must shoot down a
    very high proportion of memory; >95% in a lot of cases.

    This patch set adds a lumpy reclaim algorithm to the allocator.
    It targets groups of pages at the specified order anchored at the
    end of the active and inactive lists. This encourages groups of
    pages at the requested orders to move from active to inactive,
    and active to free lists. This behaviour is only triggered out of
    direct reclaim when higher order pages have been requested.

    This patch set is particularly effective when utilised with
    an anti-fragmentation scheme which groups pages of similar
    reclaimability together.

    This patch set (against 2.6.19-rc6-mm2) is based on Peter Zijlstra's
    lumpy reclaim V2 patch which forms the foundation. It comprises
    the following patches:

    lumpy-reclaim-v2 -- Peter Zijlstra's lumpy reclaim prototype,

    lumpy-cleanup-a-missplaced-comment-and-simplify-some-code --
    cleanups to move a comment back to where it came from, to make
    the area edge selection more comprehensible and also cleans up
    the switch coding style to match the concensus in mm/*.c,

    lumpy-ensure-we-respect-zone-boundaries -- bug fix to ensure we do
    not attempt to take pages from adjacent zones, and

    lumpy-take-the-other-active-inactive-pages-in-the-area -- patch to
    increase aggression over the targetted order.

    Testing of this patch set under high fragmentation high allocation
    load conditions shows significantly improved high order reclaim
    rates than a standard kernel. The stack here it is now within 5%
    of the best case linear-reclaim figures.

    It would be interesting to see if this setup is also successful in
    reducing order-2 allocation failures that you have been seeing with
    jumbo frames.

    Please consider for -mm.

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2006-12-06 18:03    [W:0.022 / U:43.636 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site