Task Manager shows System Interrupts consuming a steady 10–30% of your CPU. There’s no End Task button that works, no program to uninstall, and most “fixes” online are random registry tweaks that do nothing. Time for actual troubleshooting: a systematic process that identifies the interrupting device and fixes it.
System Interrupts is Windows accounting for kernel time spent servicing hardware requests. High values mean a device or driver is demanding attention far too often. This guide is the diagnostic workflow — measure, isolate, identify, fix. For a fix-ordered walkthrough of the same problem, see our companion guide to fixing System Interrupts .
Why this happens
- Driver interrupt mishandling: A buggy driver requests or mishandles interrupts excessively — the #1 cause.
- Device generating spurious interrupts: Failing hardware signals the CPU repeatedly as it errors.
- Interrupt conflicts after updates: New Windows builds reassign resources or replace tuned drivers with generic ones.
- USB device malfunction: A bad peripheral floods the USB controller with interrupt requests.
- Storage subsystem errors: A struggling drive’s retries surface as interrupt load during I/O.
- Network driver polling bugs: Wi-Fi drivers stuck in aggressive polling or power-state flapping.
- Firmware interrupt routing bugs: BIOS misconfiguring how device interrupts reach the CPU.
How to fix it
Work through these in order — diagnose first, then act.
Fix 1: Measure properly with the right tools
Task Manager’s number is a hint, not a diagnosis.
- Download LatencyMon (Resplendence, free) and Process Explorer (Microsoft Sysinternals) — both are standard technician tools.
- Close unnecessary apps, then run LatencyMon for at least 5 minutes while the system idles. Click the Drivers tab and sort by DPC count — the leader is your suspect.
- Also check the ISR count column — high ISR counts point to hardware-level interrupt flooding rather than driver deferred work.
- Write down the top 2–3 drivers with their counts. Typical mappings:
ndis.sys→ network stack,tcpip.sys→ network,storport.sys/stornvme.sys→ storage controller,USBPORT.SYS/usbxhci.sys→ USB,dxgkrnl.sys→ graphics. - Re-run the measurement after each fix below — you want to see the counts drop, not just Task Manager’s percentage wobble. Objective numbers beat vibes.
Fix 2: Correlate with activity and devices
Narrow the suspect list before changing anything.
- With LatencyMon running, test scenarios one at a time: idle, Wi-Fi heavy download, USB device plugged in, external monitor connected, on battery vs. plugged in.
- Note which scenario spikes the counts — Wi-Fi activity implicating
ndis.sysmeans the wireless driver; USB insertion spikingusbxhci.sysmeans USB subsystem. - Unplug all USB devices and re-measure — a dramatic drop immediately convicts a peripheral or the USB driver.
- Toggle Wi-Fi off (airplane mode) for 5 minutes — if interrupts vanish, the wireless driver is the problem child.
- Disconnect external monitors/docks — display-link and dock drivers are frequent offenders on office setups.
- Document the trigger precisely: “ndis.sys DPC count explodes during Wi-Fi downloads, calm on Ethernet” is a diagnosis a support tech can act on.
Fix 3: Update or roll back the implicated driver
Aim the fix at the measured culprit.
- Open Device Manager, find the device behind the suspect driver (Network adapters for ndis.sys, Storage controllers for storport, etc.).
- First try the laptop maker’s driver for your exact model — Dell , HP , Lenovo — makers tune drivers for their hardware’s interrupt behavior.
- For Intel wireless, also try the newest from the Intel Driver & Support Assistant , which often carries interrupt-handling fixes ahead of OEM packages.
- If the problem started after a driver update: Properties > Driver > Roll Back Driver — then block that driver version from reinstalling via Windows Update’s optional updates.
- Re-measure with LatencyMon after every driver change. A fixed driver shows an immediate, dramatic count reduction — no reboot-and-hope needed beyond the required restart.
Fix 4: Use Device Manager disable as a diagnostic scalpel
Confirm the device before committing to a fix.
- In Device Manager, right-click the suspect device > Disable device. (Pick non-critical ones for longer tests: Bluetooth, fingerprint reader, SD reader, secondary adapters.)
- Watch LatencyMon/Task Manager for 5 minutes. Interrupts collapse? Confirmed — the device or its driver is the source.
- Re-enable and apply the real fix (driver update, firmware, replacement).
- For USB root hubs: disable hubs one at a time — internal devices (webcam, card reader) hang off these, and one bad internal device can flood the whole controller.
- Never leave critical devices disabled as a “fix” — it’s a diagnostic step. The exception: a broken fingerprint reader you never use can stay disabled indefinitely with zero downside.
Fix 5: Update BIOS and reset firmware settings
Interrupt routing is firmware’s territory.
- Note your BIOS version (
msinfo32), then check the maker’s support site for updates mentioning stability, device compatibility, or power management. - Flash per instructions with AC power connected — interrupted flashes brick machines.
- After updating, also load BIOS defaults (or “optimized defaults”) once — years of toggled settings can leave interrupt routing in a bad state; reconfigure only what you need afterward.
- Update the chipset driver package alongside — BIOS and chipset drivers cooperate on interrupt delivery.
- Re-measure. Firmware-level interrupt fixes are real and common; this step closes cases that driver updates couldn’t.
Fix 6: Rule out hardware failure
The remaining cases are usually physical.
- Run the maker’s full hardware diagnostics — Dell SupportAssist, HP Hardware Diagnostics, Lenovo Vantage — with the extended storage and motherboard tests.
- Check drive health with the SSD maker’s toolbox; run
chkdsk C: /scanfor file-system integrity. - Monitor temperatures (HWiNFO): overheating components generate errors, and errors generate interrupts. Clean vents and fans.
- The Linux live-USB test: boot Ubuntu from USB, open a system monitor, and watch CPU. High interrupt-like load in Linux = hardware, definitively. Calm in Linux = a Windows driver you haven’t found — revisit Fix 3 with different driver versions.
- If hardware is implicated and under warranty, contact support with specifics: “LatencyMon shows stornvme.sys at 40,000 DPCs/sec, diagnostics report drive errors” — evidence accelerates RMAs.
Fix 7: Clean up the software environment
Reduce the interrupt load from the software side.
- Perform a clean boot and re-measure — if interrupts are calm, a third-party driver or service is agitating the hardware. Re-enable in halves to find it.
- Uninstall unused VPN clients, virtual network adapters, and USB device software — each installs filter drivers that add interrupt-path overhead.
- Keep Windows updated — Microsoft ships interrupt and DPC fixes in cumulative updates; check the Update Catalog if Windows Update is behind.
- As a last software resort, an in-place repair install refreshes the kernel and driver stack while keeping files and apps.
- Set a baseline: record healthy LatencyMon numbers after fixing, so future regressions are obvious in one 5-minute test.
Closing
Troubleshooting System Interrupts is detective work, not guesswork: measure with LatencyMon, correlate with activity, isolate with unplugging and Device Manager disables, then fix the convicted driver or device. The interrupt storm always has a source — this process finds it instead of hoping a random tweak does.
