From: Arthur Marsh <arthur.marsh@internode.on.net>
To: Andrea Arcangeli <aarcange@redhat.com>
Cc: Clemens Ladisch <cladisch@googlemail.com>,
alsa-user@lists.sourceforge.net, linux-kernel@vger.kernel.org,
Mel Gorman <mel@csn.ul.ie>
Subject: Re: [Alsa-user] new source of MIDI playback slow-down identified - 5a03b051ed87e72b959f32a86054e1142ac4cf55 thp: use compaction in kswapd for GFP_ATOMIC order > 0
Date: Thu, 24 Feb 2011 06:37:58 +1030 [thread overview]
Message-ID: <4D65691E.9080600@internode.on.net> (raw)
In-Reply-To: <20110223165550.GP31195@random.random>
Andrea Arcangeli wrote, on 24/02/11 03:25:
> On Wed, Feb 23, 2011 at 05:24:32PM +0100, Andrea Arcangeli wrote:
>> On Wed, Feb 23, 2011 at 04:17:44AM +1030, Arthur Marsh wrote:
>>> OK, these patches applied together against upstream didn't cause a crash
>>> but I did observe:
>>>
>>> significant slowdowns of MIDI playback (moreso than in previous cases,
>>> and with less than 20 Meg of swap file in use);
>>>
>>> kswapd0 sharing equal top place in CPU usage at times (e.g. 20 percent).
>>>
>>> If I should try only one of the patches or something else entirely,
>>> please let me know.
>>
>> Yes, with irq off, schedule won't run and need_resched won't get set.
>>
>> So let's try this.
>>
>> In case this doesn't fix I definitely give it up with compaction in
>> kswapd as GFP_ATOMIC will likely not get an huge benefit out of
>> compaction anyway because 1) the allocations from GFP_ATOMIC are
>> likely short lived, 2) the cost of the compaction scan loop +
>> migration may be higher than the benefit we get from jumbo frames
>>
>> So if this doesn't fix it, I'll already post a definitive fix that
>> removes compaction from kswapd (but leaves it enabled for direct
>> reclaim for all order sizes including kernel stack). I already
>> verified that this solves not just the midi latency issue but the
>> other server benchmark that I'm dealing with. Then we can think at
>> compaction+kswapd later for 2.6.39 but I think we need to close this
>> kswapd issue in time for 2.6.38. So if the below isn't enough the next
>> patch should be applied. I'll get those two patches tested in the
>> server load too, and I'll let you know how the results are when it
>> finishes.
>>
>> Please apply also the attached "kswapd-high-wmark" before the below
>> one.
>> + if (need_resched() || spin_is_contended(&zone->lru_lock)) {
>> + if (fatal_signal_pending(current))
>> + break;
>
> this is compaction-kswapd-2, to fix the buglet same as in the other
> patch.
>
> In short (to avoid confusion) it'll be helpful if you can test
> compaction-kswapd-2 vs compaction-no-kswapd-3 and let us know if both
> are ok or if only compaction-no-kswapd-3 is ok. compaction-no-kswapd-3
> should help, compaction-kswapd-2 I'm unsure. And as usual I suggest to
> apply kswapd-high-wmark (attached to previous emails) _before_
> applying both patches.
kswapd-high_wmark + compaction-kswapd-2 - kswapd0 CPU up to 11 percent
and slightly less pronounced slowdowns of MIDI playback compared to
previous patches.
kswapd-high_wmark + compaction-no-kswapd-3 - kswapd0 CPU up to 2.3
percent and no noticable slowdown of MIDI playback.
Mel Gorman's mm/compaction.c patch - kswapd0 CPU up to 20 percent and no
noticable slowdown of MIDI playback.
Thanks everyone for the help with this.
Arthur.
next prev parent reply other threads:[~2011-02-23 20:08 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <g0ia38-jj6.ln1@ppp121-45-136-118.lns11.adl6.internode.on.net>
2011-02-22 7:37 ` [Alsa-user] new source of MIDI playback slow-down identified - 5a03b051ed87e72b959f32a86054e1142ac4cf55 thp: use compaction in kswapd for GFP_ATOMIC order > 0 Clemens Ladisch
2011-02-22 7:46 ` Arthur Marsh
2011-02-22 13:40 ` Andrea Arcangeli
2011-02-22 16:15 ` Andrea Arcangeli
2011-02-22 16:59 ` Mel Gorman
2011-02-22 17:08 ` Andrea Arcangeli
2011-02-22 17:37 ` Mel Gorman
2011-02-22 17:47 ` Arthur Marsh
2011-02-22 19:43 ` Andrea Arcangeli
2011-02-23 9:15 ` Mel Gorman
2011-02-23 11:41 ` Arthur Marsh
2011-02-23 13:50 ` Clemens Ladisch
2011-02-23 17:01 ` Mel Gorman
2011-02-23 17:40 ` Andrea Arcangeli
2011-02-23 16:24 ` Andrea Arcangeli
2011-02-23 16:36 ` Andrea Arcangeli
2011-02-23 16:40 ` Andrea Arcangeli
2011-02-23 16:47 ` Andrea Arcangeli
2011-02-23 16:55 ` Andrea Arcangeli
2011-02-23 20:07 ` Arthur Marsh [this message]
2011-02-23 21:25 ` Andrea Arcangeli
2011-02-23 21:55 ` Arthur Marsh
2011-02-23 23:59 ` Andrea Arcangeli
2011-02-24 1:40 ` Arthur Marsh
2011-02-24 1:54 ` Andrea Arcangeli
2011-02-26 6:43 ` Andrea Arcangeli
2011-02-27 8:48 ` Arthur Marsh
2011-02-23 17:10 ` Mel Gorman
2011-02-23 17:27 ` Andrea Arcangeli
2011-02-23 17:44 ` Mel Gorman
2011-02-23 18:14 ` Andrea Arcangeli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D65691E.9080600@internode.on.net \
--to=arthur.marsh@internode.on.net \
--cc=aarcange@redhat.com \
--cc=alsa-user@lists.sourceforge.net \
--cc=cladisch@googlemail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mel@csn.ul.ie \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox