Re: snd_emu10k1 tremendous interrupt load?

From: Yuriy Tsibizov <Yuriy.Tsibizov_at_gfk.ru>
Date: Sat, 10 Feb 2007 22:02:45 +0300 (MSK)
> Hi people,
>
> Over the last few days, my CURRENT box has started to slow down to a
> crawl. top(1) reports most CPU load is spent on interrupts, and a quick
> vmstat -i to support this completely:
>
> interrupt                          total       rate
> irq1: atkbd0                        1631          0
> irq15: ata1                        14197          2
> irq16: pcm0                   1056243398     160109
Rate for emu10k1 cards should be arount 48 interrupts/s. Do you record or 
play sound?

Can you see any changes in interrupt rate when you change 
hw.snd.latency_profile?

You can also try to go back to dev/sound/pcm before 2007-02-01 09:30.

> Does anyone have any ideas why this is happening? Quick inspection of
> /sys/dev/sound/pci/emu10k1.c:emu_intr() seems to hint that the
> emu_rd(sc, IPR, 4) value takes a long time to clear, anyone have more
> hints on this annoying behaviour?

It may take some time because usual read rate should be around 48-96 
reads/second and HW can't survive high register I/O rate.

Other possibility is very low HW timer settings (like "interrupt after 
each 16 bytes", that is very unusual too) that will re-set this register 
after very small delay, comparable with duration of sound buffer 
callbacks. This will keep driver in interrupt loop and slow down 
everything. snd_emu10kx may work better in this situation (it uses 
different timer interrupt settings).

Yuriy.
Received on Sat Feb 10 2007 - 18:21:42 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:05 UTC