[linux-audio-user] soundcard sharing irq with idle devices
Atte André Jensen
atte.jensen at gmail.com
Fri Dec 1 15:53:26 EST 2006
Lee Revell wrote:
> IRQ sharing is hard wired in a laptop - it's not going to be possible
> for you to get the soundcard on its own IRQ. It will help if you
> don't load drivers for other devices sharing that IRQ though.
Well, at least I found out how move interrupts of "groups" of hardware
in the BIOS. Before the sound card was using the same interrupts as the
usb controller, the graphics card and wlan.
After doing this + setting the priority of the audiocards (+ unused pc
cards + unused modem + SMBus controller (still not sure what that is),
these share "group") I found that the source of all my trouble was
powernowd. I removed that (actually I don't feel any difference, maybe
battery will last longer) and things work *extremely much* better.
For instance I can run jack forever (while going wild on opening
programs, switching desktops and anything I can think of) without any
xruns at 11ms latency. The latest song I'm working on has 9 vocal tracks
with fx in ardour + seq24 driving specimen and 9 (!) parts in
zynaddsubfx with quite a busy arrangement. It runs smooth as butter and
I can do what-ever else I do on the laptop!
Actually I can go even lower in latency without any xruns, but this song
(that I've been using as a test) will glitch from time to time, I
suspect its zynaddsubfx that can't keep up. No xruns, just a single
click every minute or so from (I suspect) zynaddsubfx.
> Anyway having your soundcard on a non-shared IRQ is overrated - as
> long as you aren't sharing it with a "heavy" device like a disk
> controller or ethernet adapter. If you find it impossible to
> eliminate xruns on a laptop there's a good chance that SMI is the
> problem and you must use a higher latency.
I was quite surprised that the performance is (as far as I can tell) the
same whether or not I put the audio card on an interrupt together with
the afore mentioned unused devices + set it's priority. Actually I'd be
most interested in hearing your thoughts on the following:
1) Am I right in doing this:
chrt -f -p 90 `pidof "IRQ 11"`
chrt -f -p 85 `pidof "IRQ 8"`
provided my soundcard (+ idle stuff) is on IRQ 11 and rtc is on IRQ 8?
2) If the above is correct (or at least better than nothing) shouldn't I
be getting at least *some* performance difference?
BTW: it's on an IBM T41 1.6Ghz Pentium M w 1G ram, with debian/unstable,
mingo-patched 2.6.18-rt7 kernel and openbox.
peace, love & harmony
http://www.atte.dk | quintet: http://www.anagrammer.dk
| compositions: http://www.atte.dk/compositions
More information about the Linux-audio-user