Original Task Manager creator explains why it lies to you about CPU usage — former Microsoft engineer shows unique solution to a seemingly simple, but actually

Original Task Manager creator explains why it lies to you about CPU usage — former Microsoft engineer shows unique solution to a seemingly simple, but actually

When you purchase through links on our site, we may earn an affiliate commission. Here’s how it works .

Dave says that Task Manager is timer-driven in that it refreshes every so often to give you an updated figure. This shows that the machine is showing an interpretation of what happened to your PC between each refresh, not a real-time view of your CPU’s actual usage. The easy answer to this would have been to divide the CPU usage by the time elapsed between refreshes, but Plummer says that this depends on the GUI timer firing precisely. He compared this to “trusting a metronome to stay perfectly steady while it’s riding the back of a pickup truck on a pothole-filled dirt road.”

You may like Veteran Microsoft engineer says original Task Manager was only 80KB so it could run smoothly on 90s computers Creator of Window's Task Manager shows off 'probably what Task Manager would look like if I were still around' 'Every Microsoft engineer got a stopwatch,' says Windows veteran reminiscing about company's past focus on speed Instead, he programmed the Task Manager to ask for the total time, i.e., the sum of the kernel time and the user time, of each process since it started. It then subtracts the last total it received during the last refresh from that particular process from that value to get its CPU consumption for that period. This number is then divided by how much total CPU time was accounted for and consumed by all processes in between refreshes. While it may sound complicated versus just dividing the total CPU usage by the time elapsed between refreshes, this solution is far more precise.

However, technological advances made this feel inaccurate. Since the accounting is just an average number, between refresh states, it does not take into account the actual work happening at a particular moment. “Modern CPU usage is more like how full the freeway was, rather than how many miles were actually traveled. A half-full freeway with Ferraris on it can move a lot more traffic than a jammed freeway full of old cement trucks,” Plummer explained. “Now, the old Task Manager was built in an era where the time used was a pretty decent proxy for what work got done. But on today’s processors with dynamic frequency scaling, turbo boost, thermal throttling, deep idle states, that connection has gotten a lot looser. So, when the numbers feel a little slippery, it’s not because the tool is broken so much as the hardware stops being simple enough for a single percentage to tell you the whole story.”

He also added a note on the screen saying, “If I were king… CPU usage should be a measure of the amount of work accomplished versus the theoretical maximum work that COULD have been accomplished.” But because he’s already retired from Microsoft, he probably has no say anymore in how Windows should work.

You can find several more interesting stories and explanations on how one of Windows’ most basic tools works on the Dave’s Garage video embedded above.

Get Tom's Hardware's best news and in-depth reviews, straight to your inbox.

Key considerations

  • Investor positioning can change fast
  • Volatility remains possible near catalysts
  • Macro rates and liquidity can dominate flows

Reference reading

More on this site

Informational only. No financial advice. Do your own research.

Leave a Comment