Messages in this thread | | | Subject | Re: [PATCH v2] mm: implement write-behind policy for sequential file writes | From | Konstantin Khlebnikov <> | Date | Mon, 23 Sep 2019 19:05:55 +0300 |
| |
On 23/09/2019 18.36, Jens Axboe wrote: > On 9/20/19 5:10 PM, Linus Torvalds wrote: >> On Fri, Sep 20, 2019 at 4:05 PM Linus Torvalds >> <torvalds@linux-foundation.org> wrote: >>> >>> >>> Now, I hear you say "those are so small these days that it doesn't >>> matter". And maybe you're right. But particularly for slow media, >>> triggering good streaming write behavior has been a problem in the >>> past. >> >> Which reminds me: the writebehind trigger should likely be tied to the >> estimate of the bdi write speed. >> >> We _do_ have that avg_write_bandwidth thing in the bdi_writeback >> structure, it sounds like a potentially good idea to try to use that >> to estimate when to do writebehind. >> >> No? > > I really like the feature, and agree it should be tied to the bdi write > speed. How about just making the tunable acceptable time of write behind > dirty? Eg if write_behind_msec is 1000, allow 1s of pending dirty before > starting writbeack. >
I haven't digged into it yet.
But IIRR writeback speed estimation has some problems:
There is no "slow start" - initial speed is 100MiB/s. This is especially bad for slow usb disks - right after plugging we'll accumulate too much dirty cache before starting writeback.
And I've seen problems with cgroup-writeback: each cgroup has own estimation, doesn't work well for short-living cgroups.
| |