Re: [Alsa-user] new source of MIDI playback slow-down identified- 5a03b051ed87e72b959f32a86054e1142ac4cf55 thp: use compaction in kswapdfor GFP_ATOMIC order > 0

From: Clemens Ladisch
Date: Tue Feb 22 2011 - 02:43:48 EST


Arthur Marsh wrote:
> I'm experiencing MIDI playback slow-downs when I'm observing kswapd0
> active (a few percent of cpu in top output) in recent kernels.
>
> I git-bisected the problem down to:
>
> commit 5a03b051ed87e72b959f32a86054e1142ac4cf55
> Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
> Date: Thu Jan 13 15:47:11 2011 -0800
>
> thp: use compaction in kswapd for GFP_ATOMIC order > 0
>
> This takes advantage of memory compaction to properly generate pages of
> order > 0 if regular page reclaim fails and priority level becomes more
> severe and we don't reach the proper watermarks.
>
> Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
>
> I ran git-bisect over the weekend, building and installing ALSA 1.0.24
> with each kernel. After identifying the above commit, I rebuilt the 2.6
> head with that commit reverted and verified that the problem was no
> longer present.

Apparently, huge page compaction disables interrupts for much too long.

> MIDI playback was via aplaymidi -p 17:0 to a Soundblaster Audigy 2 ZS
> (SB0350) wavetable.

The ALSA sequencer uses either the system timer or an HR timer at 1 kHz
to deliver MIDI commands (notes); the wavetable driver requires its own
interrupts in regular 5.3 ms intervals.


Regards,
Clemens
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/