lkml.org 
[lkml]   [2009]   [Oct]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    Subject[PATCH 00/45] some writeback experiments
    Hi all,

    Here is a collection of writeback patches on

    - larger writeback chunk sizes
    - single per-bdi flush thread (killing the foreground throttling writeouts)
    - lumpy pageout
    - sync livelock prevention
    - writeback scheduling
    - random fixes

    Sorry for posting a too big series - there are many direct or implicit
    dependencies, and one patch lead to another before I can stop..

    The lumpy pageout and nr_segments support is not complete and do not
    cover all filesystems for now. It may be better to first convert some of
    the ->writepages to the generic routines to avoid duplicate work.

    I managed to address many issues in past week, however there are still known
    problems. Hints from filesystem developers are highly appreciated. Thanks!

    The estimated writeback bandwidth is about 1/2 the real throughput
    for ext2/3/4 and btrfs; noticeable bigger than real throughput for NFS; and
    cannot be estimated at all for XFS. Very interesting..

    NFS writeback is very bumpy. The page numbers and network throughput "freeze"
    together from time to time:

    # vmmon -d 1 nr_writeback nr_dirty nr_unstable # (per 1-second samples)
    nr_writeback nr_dirty nr_unstable
    11227 41463 38044
    11227 41463 38044
    11227 41463 38044
    11227 41463 38044
    11045 53987 6490
    11033 53120 8145
    11195 52143 10886
    11211 52144 10913
    11211 52144 10913
    11211 52144 10913

    btrfs seems to maintain a private pool of writeback pages, which can go out of
    control:

    nr_writeback nr_dirty
    261075 132
    252891 195
    244795 187
    236851 187
    228830 187
    221040 218
    212674 237
    204981 237

    XFS has very interesting "bumpy writeback" behavior: it tends to wait
    collect enough pages and then write the whole world.

    nr_writeback nr_dirty
    80781 0
    37117 37703
    37117 43933
    81044 6
    81050 0
    43943 10199
    43930 36355
    43930 36355
    80293 0
    80285 0
    80285 0

    Thanks,
    Fengguang



    \
     
     \ /
      Last update: 2009-10-07 10:45    [W:0.023 / U:3.416 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site