Gregg: CPU Utilization is Wrong
Gregg: CPU Utilization is Wrong
Brendan Gregg asserts
that CPU utilization is the wrong metric to be looking at when tuning a
system. Much of the
time when the CPU appears to be busy, it's actually just waiting for
memory.
"The key metric here is instructions per cycle (insns per cycle:
IPC), which shows on average how many instructions we were completed for
each CPU clock cycle. The higher, the better (a simplification). The above
example of 0.78 sounds not bad (78% busy?) until you realize that this
processor's top speed is an IPC of 4.0. This is also known as 4-wide,
referring to the instruction fetch/decode path. Which means, the CPU can
retire (complete) four instructions with every clock cycle. So an IPC of
0.78 on a 4-wide system, means the CPUs are running at 19.5% their top
speed. The new Intel Skylake processors are 5-wide.
"
