MacOS – Help identify what uses the CPU when the Activity Monitor list of all processes does not help

activity-monitorapplicationsmacosperformancesnow leopard

Problem

After rebooting, and with only Activity Monitor open, my MacBook Pro (10.6, i7) shows a very high idle % (98% or higher) but then shortly after drops down to 40% – 50%.

In the Activity Monitor list of all processes:

  • nothing accounts for this drop.

Five questions

What is the reason for the drop in the idle percentage?

Does OS X run something that is not listed as a process in Activity Monitor?

Does it shut a CPU or two down?

Is there a way to force it to give me the full attention of the CPU, even though I'm not using it?

For what's below, are there better ways to measure how much total system impact an app has, since the app cpu% doesn't show all the secondary activity an app causes a system to complete?

Background

I'm trying to measure the performance of a particular app, and one of the metrics, since some of the app activity is performed inside the kernel in the form of system calls, is CPU idle %.

If OS X runs stuff in the background I can't see, or turns CPUs off or slows them down, then it obviously impacts my measurements.

Best Answer

Testing seems to show that the culprit is Intel's Turbo Boost technology, which disables processor cores on the fly without telling the OS. Since they aren't running the CPU idle process, activity monitor doesn't account for them, and it appears that the machine is under 50% idle when the reality is that it's near 100% idle.

At the moment it doesn't appear as though this can be easily disabled or controlled under OS X: How can I disable CPU throttling and CPU disabling?

Turbo boost is built into many Core i7 and i5 processors, and some of the latest Core i3 processors. You will have to check your processor version against intel's list of Turbo Boost capable processors to find out if yours has it. If you don't have sandy bridge, you probably don't have turbo boost.