Are IRQ "conflicts" still a cause of concern with Windows 10?

Kain

Well-known member
Rage3D Subscriber
If I place my sound card in a PCIe x16 slot, it has the same IRQ as my graphics card and some other thing. If I place my sound card in a PCIe x4 slot, it gets its own IRQ not shared with anything else. I remember IRQs used to be something to worry about back in the day. Is having the same IRQ for multiple things still something to worry about?
 
Modern operating systems can deal with it. You might have specific cards that don't deal with it well (not getting enough bandwidth as fast as it needs it, etc.)

Soundblaster was (is?) bad about that because it's a streaming thing, and small interruptions caused pops and clicks.
 
IRQ sharing has been a thing since ACPI/APIC/PnP, but was a problem occasionally with certain devices on 33MHz PCI slots. Devices would have to compete for priority, and low-latency requirements between competing devices could potentially cause problems.

I had an IRQ sharing issue between a dial-up modem and a sound card back in the day. It was a crappy Systemax with a pentium 3. If I connected to the internet, then tried to play music, the modem would suddenly disconnect. PITA! I did what you did, switched the modem to another slot, and the problem went away.

Nowadays, it's not really an issue as PCI-E slots are so much faster, any competing interrupt requests would get resolved in a matter of nanoseconds. It's likely that the PCI-E spec itself, in addition to being faster, also has some other mitigations baked in.

IIRC a way to test for potential problems is using tools like DPC Latency checker/LatencyMon, but I think those more relate to problems stemming from drivers.

It would be interesting to test if there's any perceived change in performance/latency when high-bandwidth devices have to share an IRQ vs. when they don't, in modern systems.
 
Last edited:
:arrow_up: On top of this, the way interrupts work in PCI-e 3 compared to PCI is very different. Some kernels will have some kind of fancy mapping which sort of treats them like old style interrupts, but they really are not.
 
Remember the old days when we had to manually bridge the pins for the IRQ on a board, and you only had a handful of IRQs to choose from?

image.png
 
Remember the old days when we had to manually bridge the pins for the IRQ on a board, and you only had a handful of IRQs to choose from?

image.png

Oh yeah. I remember and hated those days.

I remember having to manually assign IRQ's in Windows for my damn video card to work right.
 
Remember the old days when we had to manually bridge the pins for the IRQ on a board, and you only had a handful of IRQs to choose from?

image.png

:yep:

I remember allocating 4mb of RAM to the modem for better speed.

Bleeding edge I tell y'a!
 
Back
Top