Logo for Pc-Mus Near Silent DAWs ( Digital Audio Workstations )
Logo for Pc-Mus Professional Quiet Music Computers.

Fix IRQ sharing - Interupt ReQuest


This will help people with glitches/jitter/pops which are caused by the computer not being able to process the audio due to its attension being else where not spending enough time processing audio. To fix this increase your buffer settings to give you more latency. Someone might tell you that your graphic card is "hogging/locking the pci bus" this is 100% rubbish if u have an AGP card... AGP was designed to BYPASS the pci bus where the bottleneck for high end graphics WAS. I've been playing with/building computers a very long time. Graphics cards and other devices can still cause these glitches through other means thou.....IRQ's are 1 way they can. 

IRQ...What is an IRQ ?

The easiest way to explain it is that when a device needs the CPU it sends a request along the IRQ to the CPU. When the CPU gets this request the CPU stops everything it is doing and dumps all its current work to cache or to the HDD if you have no RAM left. It then services the device that sent the request. It will then get the work it was doing from cache/HDD and carry on what it was doing before that interrupt was sent. If you get too many IRQ requests or u drop the latency you will increase the chance that the CPU wont have time to process your audio before it is finished servicing the device that sent the interrupt request. 

IRQ Sharing, why is this bad?

When a IRQ request is sent the CPU has to determin which device sent that request, then if devices are sharing. The CPU has to spend more time working out with device needs attension. Never let the audio card's IRQ share. IRQ steering, IRQ holders and ACPI IRQ STEERING functions are the exception to this. They can share quite happily.

IRQ holder for PCI steering
ACPI IRQ Holder for PCI IRQ Steering
These and a few more can share IRQ without causing any problems....they will follow the PCI card no matter where you put it, this is normal.

OK nothing is sharing but i still get clicks/pops/glitches ?

There are 16 IRQ's in the modern PC, 15 are addressable. What happens when the CPU get 2 requests at the same time ? It puts them into an order of priority  0 1 2  8 9 10 11 12 13 14 15 3 4 5 6 7 i won't go into depth why they r in this order just that old computers used to have only 7 IRQ's and its the way they added more to the standard. If u make your audio card IRQ 9 or 10 then it is above most other devices including the graphics card. free up as many IRQ's in your computer and your CPU has alot more time to work on audio with no distractions. A computer dedicated to audio in other words. I should add to this that IRQ 9 is the optimal IRQ to use, using another is fine even IRQ 7 for your audio card is fine so long as it is not shared with another device. Modern motherboards are now using IRQ9 for ACPI functions and I would not recommend using it anymore. If you see "SCI IRQ used by ACPI bus" using an IRQ do not let the Audio card share with this IRQ... You will find that it will always take IRQ 9 (funny this huh ? wonder why it chooses 9 ? *winks*) .... Use IRQ 10 in these boards.


How does USB deal with IRQ's ?

You can probably guess, it shares IRQ's...over 100 devices can share the 1 IRQ, imagine what this would do to your audio if your using a lot of usb devices, if your only using 1 or 2 usb devices it is fine.

Most UBS devices really chew CPU cycles and should be disabled or unplugged if its not being used. Cheap modems and network adapter that use USB can take a lot of the cpu power away from the computer, this is easily seen by using the Performace meters in winXP by pressing the CTRL + ALT + DEL keys to bring up the task manager. The cpu usage when some usb modems including DSL and 56k modems can be as high as 40% of a 2 ghz cpu !

Make sure that the latest drivers for your mother board are installed since these will fix some problems with USB, Also with VIA chipsets there are extra drivers u need they are at the VIATECH web site. Look for the 4IN1 drivers. The intel 440 bx chipsets and most of the sd ram based via chipsets had problems in their usb controllers. If you own one of these board then using a better quality pci based usb controller add in card may fix some problems if you have trouble with usb gear on these mothbaords.

I own USB devices should I get rid of them ?

No I wouldn't get rid of them. I personally use a USB cable modem which transfers huge amounts of data while I am using my audio card with Logic Audio and Rocket Power...I have no problems with USB.. I recommend that you update your BIOS if you own an older MB and have windows 98 second edition loaded or winxp. I would advise against buying and using more than one USB device at a time due to the way it allows IRQ sharing. You may be able to use a few devices at once but for these reasons I shall list USB should only be used for MIDI and Digital cameras and devices that are only plugged in for a short amount of time.

USB devices generally are high CPU intensive devices, they require the CPU to EMMULATE the device. Less CPU power for tracks and FX.
USB is continually checking for new devices which once again puts more load on the CPU
Windows Safe mode wont load USB support....Stay away from USB keyboards and mice or you will get caught out with this one !!!
USB allows mass IRQ sharing which will once again increase the CPU load.


How Do I change the IRQ a device is using ?

The easiest way to change an IRQ is to install the card into another PCI slot. IRQ steering will follow the device around so dont worry about it if the device is sharing with IRQ steering or something similar. Every device that is PCI 2.1 compliant can share with IRQ sharing (all devices in other words)....Different motherbaords will assign different IRQ's differently but in your BIOS you can sometimes specify which IRQ will be used for which PCI slot...Be aware that PCI slot 1 will share IRQ with your AGP slot generally speaking and also USB will share with which ever IRQ pci slot 3 (sometimes pci slot 4) is assigned. IRQ's are assigned by the bios and therefore cannot be changed via any settings in windows. Shuffling your pci cards around may be needed to ensure that all bus mastering devices do not sharing IRQ's or the card amy as well not have bus mastering at all. I know heaps of tricks with changing IRQ's but I wont go into them due to the way it gets very messy and extremely hard to explain. If you can think logically you should be able to work them out on your own like I did when I was 14 years old. Changing PCI slots is the easiest way to achieve a different IRQ.

IRQ Sharing is the number 1 cause and is only the starting piont for stopping glitches/pops. Any MB can change IRQ's on any device there are a few tricks to it on some MB's and it can get quite complicated. I wont write how to do it other than the easiest way to change a IRQ is to install the Audio card into another PCI slot. PCI slots 2 or 3 will normally have a unshared IRQ assigned to it. People dont understand what IRQ's are and what they mean, i hope i have cleared it up for some people.