[lkml]   [2006]   [Mar]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Subject[PATCH 00/03] Unmapped: Separate unmapped and mapped pages
    Unmapped patches - Use two LRU:s per zone.

    These patches break out the per-zone LRU into two separate LRU:s - one for
    mapped pages and one for unmapped pages. The patches also introduce guarantee
    support, which allows the user to set how many percent of all pages per node
    that should be kept in memory for mapped or unmapped pages. This guarantee
    makes it possible to adjust the VM behaviour depending on the workload.

    Reasons behind the LRU separation:

    - Avoid unnecessary page scanning.
    The current VM implementation rotates mapped pages on the active list
    until the number of mapped pages are high enough to start unmap and page out.
    By using two LRU:s we can avoid this scanning and shrink/rotate unmapped
    pages only, not touching mapped pages until the threshold is reached.

    - Make it possible to adjust the VM behaviour.
    In some cases the user might want to guarantee that a certain amount of
    pages should be kept in memory, overriding the standard behaviour. Separating
    pages into mapped and unmapped LRU:s allows guarantee with low overhead.

    I've performed many tests on a Dual PIII machine while varying the amount of
    RAM available. Kernel compiles on a 64MB configuration gets a small speedup,
    but the impact on other configurations and workloads seems to be unaffected.

    Apply on top of 2.6.16-rc5.


    / magnus
    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-03-10 04:46    [W:0.021 / U:49.908 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site