DEV Community

Izanagi
Izanagi

Posted on

IRQ priority and MSI mode: the GPU interrupt optimization

Every time your GPU finishes rendering a frame, it signals the CPU via an interrupt. How that interrupt is handled affects frame delivery latency.

Legacy INTx vs MSI

By default, GPUs use legacy INTx interrupts — a shared hardware signal. Multiple devices share the same interrupt line, and the driver has to check which device fired it.

MSI (Message Signaled Interrupts) sends interrupts as memory writes directly to the CPU. They're per-device, so no sharing, no check required. Lower latency, more reliable.

Most modern GPUs support MSI but Windows doesn't always enable it automatically.

Enabling MSI mode for GPU

Find your GPU's device instance path in Device Manager (right-click → Properties → Details → Device Instance Path).

Then in registry:

HKLM\SYSTEM\CurrentControlSet\Enum\<device-path>\Device Parameters\Interrupt Management\MessageSignaledInterruptProperties
MSISupported = 1
Enter fullscreen mode Exit fullscreen mode

Also set IRQ priority:

HKLM\SYSTEM\CurrentControlSet\Enum\<device-path>\Device Parameters\Interrupt Management\Affinity Policy
DevicePriority = 3
Enter fullscreen mode Exit fullscreen mode

Audio device too

The same MSI mode treatment applies to your audio device. GPU and audio on MSI mode together reduce DPC latency — measurable with LatencyMon.

IzanagiOP's Aggressive Optimizations pack handles GPU and audio MSI mode automatically using the correct device paths for your hardware. https://terweb.lt/

Top comments (0)