PC Optimization #interrupt affinity#IRQ#Windows 11

Windows 11 Interrupt Affinity Tool: Optimize IRQ Performance

Use Microsoft's Interrupt Affinity Policy Tool to pin hardware interrupts to specific CPU cores for lower gaming latency.

6 min read

Hardware interrupts (IRQs) are signals from devices — your GPU, NIC, USB controller, audio card — that demand immediate CPU attention. By default, Windows distributes these interrupts across all CPU cores, which can create scheduling conflicts on hybrid-architecture CPUs (Intel 12th gen+) or simply place high-frequency interrupts on the wrong cores. Interrupt Affinity Policy Tool lets you pin device interrupts to specific CPU cores, potentially reducing latency and improving gaming smoothness.

What Are Hardware Interrupts?

Every time your GPU completes a frame, your network card receives a packet, or your audio buffer needs refilling, an interrupt fires on the CPU. The CPU must stop its current work, handle the interrupt, and resume. On modern systems with dozens of active devices, these interrupts compete for CPU time and can cause microsecond-level delays that accumulate into frame time inconsistencies.

Download the Tool

Microsoft’s Interrupt Affinity Policy Tool is part of the Windows Hardware Lab Kit:

Download: Search “Microsoft Interrupt Affinity Policy Tool” — the direct download is from Microsoft’s Windows Performance Toolkit. The tool is named intpolicy.exe.

Alternative: MSI Interrupt Affinity Tool (from MSI’s website — works for all motherboard brands) provides a cleaner GUI.

Understanding CPU Core Types (Intel 12th Gen+)

Intel 12th, 13th, and 14th gen processors have two types of cores:

  • P-cores (Performance): High IPC, run at high boost clocks — best for gaming
  • E-cores (Efficiency): Lower power, lower performance — good for background tasks

For interrupt affinity: consider pinning GPU interrupts to P-cores and USB/NIC interrupts to E-cores, letting P-cores focus on game rendering.

Using the MSI Interrupt Affinity Tool

  1. Launch the tool as Administrator
  2. You’ll see a list of all devices and their current interrupt assignment
  3. For each device, you can pin it to a specific CPU core using a bitmask

Bitmask explained: The bitmask is a binary number where each bit represents a CPU (starting from CPU 0). For a system with 8 cores:

  • Core 0 only: 0x01 (00000001 binary)
  • Core 1 only: 0x02 (00000010 binary)
  • Cores 0-3 only: 0x0F (00001111 binary)
  • All cores: 0xFF (11111111 binary)

For a 24-core Intel i9-13900K (8P + 16E cores):

  • P-cores are cores 0-15 (logical)
  • E-cores are cores 16-31 (logical)
DeviceRecommended AssignmentReason
GPU (NVIDIA/AMD)P-core 0 or 1Low latency frame completion
Primary NICP-core 2Network I/O is latency-sensitive
USB controller (gaming peripherals)P-core 3Mouse/keyboard input latency
Audio controllerE-coreNon-latency-critical
Storage controllerE-coreBackground I/O

Setting Interrupt Affinity via Registry

For manual configuration without a GUI tool:

  1. Open Device Manager
  2. Find your device (e.g., NVIDIA GPU) → Properties → Details → Device instance path — note this value
  3. Open Registry Editor: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\[Device Path]\Device Parameters\Interrupt Management\Affinity Policy
  4. Create or modify:
    • DevicePolicy (DWORD) = 4 (IrqPolicySpecifiedProcessors)
    • AssignmentSetOverride (Binary) = Your bitmask

Restart required.

Checking Current Interrupt Distribution

See current interrupt distribution in Command Prompt:

# View interrupt counters per CPU
typeperf "\Processor(_Total)\Interrupts/sec" -sc 1

Or in PowerShell, get per-device interrupt data:

Get-WmiObject Win32_PnPAllocatedResource | Where-Object {$_.Antecedent -like "*IRQ*"}

When Does This Actually Help?

Interrupt affinity tuning provides measurable benefit in specific scenarios:

  • High-frequency network gaming (1000Hz polling on Ethernet NIC + gaming mouse creates interrupt load)
  • Systems with audio crackling or USB polling issues
  • Hybrid CPU systems where E-cores handle P-core-destined interrupts
  • High-resolution polling mice (1000Hz+) with USB controller interrupt conflicts

For average users, the gains are marginal (sub-millisecond). For competitive gamers chasing every microsecond of input latency, combined with other optimizations (power plan, HPET, driver settings), it contributes to a cumulatively lower-latency system.

Always benchmark before and after using tools like RTSS frame time capture or MouseTester (for input device polling) to verify any improvement.

#gaming latency #CPU cores #Windows 11 #IRQ #interrupt affinity