How do I analyze excessive Windows kernel mode CPU usage?

You can find out which DPC routine is causing the freezes by using a tool like LatencyMon (http://www.resplendence.com/latencymon). Simply look for the DPC routine taking the longest total time.


My problem was that kernel-mode cpu usage was at 90+% with no applications running. The machine is very old, has only 2 GB of ram and is running Windows XP that was last updated in 2013. DPC Latency checker initially indicated that all was well and I should be able to run non-interrupted streaming - which is not actually possible with 90% cpu usage happening. However, after running a few minutes, DPC Latency checker changed its assessment and stated that “a driver” was behaving badly and provided the recommendation to use device manager to disable as many devices as possible to see if the problem goes away.

I disabled several devices and ultimately found that if I disable all of the usb devices, my problem completely disappears - 2% cpu usage when idle. I would assume that this technique would also work if it were some of the other devices that weren’t working so if you have a similar problem, start there.