Per-CPU performance statistics are useless
Windows, Linux and OS X offer the ability to view the utilization of each CPU/core in the system. This is completely useless. On all these operating systems, tasks get switched from one core to another on a regular basis. (I don't know why this happens, but I suppose there is no reason for it not to happen.)
Here is my CPU-bound single-threaded program running on a dual-core computer.
I suppose all one can really say is that if one has N cores and the average CPU% usage (over all cores) is approximately 100/N then probably one is running a program which can't take advantage of multiple cores.
I would rather replace the current "CPU usage history, per core" multiple graphs with:
- One graph, showing a history of the average over all CPUs (visually the same as if one had a 1-core CPU).
- I would then add horizontal marker lines: If one had 4 cores, I would add 4 equally spaced marker lines. This would show that if the performance reached a marker line (e.g. 25% for the first line) then probably running the equivalent of 1 single-threaded program.
I mean it's not a brilliant solution but I reckon it would be more meaningful than the way the information is currently displayed.