[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9b1675090904021926o4a404c3ajf623b1560f919289@mail.gmail.com>
Date: Thu, 2 Apr 2009 20:26:01 -0600
From: "Trenton D. Adams" <trenton.d.adams@...il.com>
To: David Rees <drees76@...il.com>
Cc: Christian Kujau <lists@...dbynature.de>,
Artem Bityutskiy <Artem.Bityutskiy@...ia.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: EXT4-ish "fixes" in UBIFS
On Thu, Apr 2, 2009 at 7:55 PM, David Rees <drees76@...il.com> wrote:
> On Thu, Apr 2, 2009 at 5:28 PM, Trenton D. Adams
> <trenton.d.adams@...il.com> wrote:
>> On Thu, Apr 2, 2009 at 6:24 PM, Trenton D. Adams
>> <trenton.d.adams@...il.com> wrote:
>>> Yes, mounting "-o sync" does improve ext3 performance. It sucks
>>> though, because I do want quick writes. And mounting with sync option
>>> slows down to disk io speeds. In my case, that's between 20 and 23
>>> megabytes per second *big frown, quivering lip, and tears in my eyes*.
>>> :P
>>>
>>
>> Oh, I should have clarified. It improves performance under heavy
>> load. Under normal load, mounting without sync is fine. What I tend
>> to do is mount with "remount,rw,sync" when heavy load is starting.
>> Then my system goes slowly, but latency is good. Then, when it's all
>> done (say a big compile, or job, or whatever), I remount without sync
>> again.
>>
>> I'm thinking of writing a script that monitors performance, and
>> remounts as needed, lol. WHAT A HACK. hehe.
>
> All you're doing here is implementing the lowering of dirty data
> limits in the VM dynamically based on how long fsyncs take.
>
> Linus outlined this specific strategy as "the ideal siutation"
> somewhere in the depths of "That filesystem thread".
>
> Look at the new in 2.6.29 dirty*bytes parameters in
> Documentation/sysctl/vm.txt for more info. By lowering those values,
> you can effectively turn normal writes into synchronous writes which
> will greatly reduce latency of fsync under heavy write load.
WOW, that makes a huge difference. If I set it to 100M, I get the
10-15 second delay I was talking about. But, if I set it to 1M, I get
0.3 to 0.4 second delay on a 1M fsync. That is way better. Perhaps I
should auto-tune based on that parameter then. Although I do agree
with Linus that it sucks to do userland auto-tuning. :P
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists