In Windows Task Manager History I can see that there was a CPU spike and my computer freezes.

And I can see when I sort the view on highest CPU percentage which processes take most of the CPU.

But whenever the PC hangs / freezes, it doesn't update the view so I am unable to capture it.

All I can see in my CPU graph is that there was a spike a while ago.

enter image description here

What is the best way to identify what caused a CPU spike?

  • 9
    Historically? None, unless it was logged as a critical system event in the event viewer. If you want to monitor it going forward, you'll need to use Perfmon with a trace running, logging quite a lot of thread information. Feb 9 at 11:58
  • Depends on how deep you want to go. The proper tool for really digging in, if that's necessary, is ETW - Event Tracing For Windows - and Bruce Dawson has an excellent series of blog posts about it.
    – davidbak
    Feb 12 at 6:14
  • 1
    It's fairly uncommon for a computer to become completely unresponsive even during 100% multi-core CPU usage. You should right-click the graph and enable "Show kernel times". Odds are there is some blocking process which has taken full system priority; usually this points to an antivirus software. security.stackexchange.com/questions/204416/…
    – MonkeyZeus
    Feb 12 at 14:35

1 Answer 1


One tool that could help is Process Explorer.

Leave Process Explorer running minimized while the computer is working. Immediately after a CPU spike, bring it up and start menu View > System Information... or just hit Ctrl+I.

In the System Information screen, hover the mouse over the spike and you will see the process causing it.

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .