[linux-audio-user] APIC is bad?

Mark Knecht mknecht at controlnet.com
Fri Jul 16 14:15:32 EDT 2004

Florin Andrei wrote:
> Well, the thing is, without APIC (default with Fedora single-CPU
> kernels) there was some overlap in the way the devices were assigned
> interrupts. Nothing bad (especially since the EMU10K1 got it's own IRQ),
> but still i thought there is room for improvement.
> So, since IO-APIC usually provides more interrupts, i thought, well, if
> there are more IRQs available, the kernel might find a better way to
> assign them.
> The reality is quite the opposite. With IO-APIC the IRQs suffer from
> more overlapping than without it. Which is kind of strange to me.
> BTW, the mobo is based on the NForce v1 chipset.

As per Clemens' note this is complicated. I'm not sure I understand your 
feedback about 'suffers from more overlapping'. Could you post the 
output of /proc/interrupts for the same machine configuration with 
IO-APIC and old style interrupts?

One other 'misdirection' you may run into here is that many motherboards 
will tie together the interrupt line from multiple PCI slots to a single 
wire and run that line to the interrupt controller. This was very common 
with the older style interrupts and would show up as two or more devices 
sharing an interrupt. The only way around this with the older machines 
was to move boards around.

With the newer IO-APIC machines the interrupt controllers have more 
inputs and there is generally less reason for motherboard designers to 
tie these together, but I have heard that they are still tied together 
on certain motherboards. (I don't know if this is true...I've just heard 
it.) Therefore it might still happen that someone (you?) would see 
shared interrupts because fo the way the motherboard is designed. The 
info is often in the motherboard manual, or at least it alway is for 
Via-based motherboards. I have one non-audio nForce2 box but it's 
running in traditional mode:

mark at gandalf mark $ cat /proc/interrupts
   0:  112390402          XT-PIC  timer
   1:     126469          XT-PIC  keyboard
   2:          0          XT-PIC  cascade
   5:    1336833          XT-PIC  NVidia nForce2, eth0
   8:          2          XT-PIC  rtc
   9:          0          XT-PIC  acpi
  10:   68038461          XT-PIC  ohci1394, ehci_hcd, usb-ohci, 
usb-ohci, nvidia
  11:    2188451          XT-PIC  ide2
  12:   10755041          XT-PIC  PS/2 Mouse
  14:          3          XT-PIC  ide0
NMI:          0
ERR:          0

As always, I think this is an interesting topic being that I'm a PC 
hardware guy. I cannot imagine why too many musicians would want to go 
through all of this though!

Good luck!

- Mark

More information about the Linux-audio-user mailing list