# Any tool that displays CPU core utilization? [duplicate]

I like the way System Monitor on Ubuntu displays the usage of different cores on the CPU. I write multi-threaded applications and it is useful for me to see how many cores are being occupied, for how long and with how much utilization. All of this information is neatly summarized by the CPU utilization in System Monitor.

Now, the problem is System Monitor itself takes a lot of resources to run. For example, it takes 16-25% of a core when I'm running it.

Is there an alternative to System Monitor that utilizes lesser CPU and has CPU visualization that shows utilization of all individual cores?

-

## marked as duplicate by belacqua, Thomas W., Uri Herrera, Raja, user68186May 13 '13 at 14:13

@belacqua That question does not help because I'm specifically looking for a monitor that focuses on core utilization. Most of the recommendations there do not have this. –  Ashwin Nanjappa May 13 '13 at 3:36
So, excluding the recommendations that don't focus on core usage, do any of those work? Also, I think I remember that gkrellm shows core usage, but I'm not positive. It's ugly unless you reskin it, however. –  belacqua May 13 '13 at 3:38
@belacqua None of them show core utilization except for htop, which is a terminal program. I don't really need the other features in System Monitor, I will change question title to reflect this. –  Ashwin Nanjappa May 13 '13 at 3:43
@Qasim The first one is about memory utilization & the second is about non-GUI programs. It would be nice to see if there are GUI programs that someone can point out :-) –  Ashwin Nanjappa May 13 '13 at 5:55
You can also see my answer on gkrellm here: askubuntu.com/questions/124159/… . –  belacqua May 13 '13 at 18:46

Have a look at `mpstat`, eg:

``````\$ mpstat -P ALL 2
Linux 2.6.35-30-generic (m10-ubuntu)    13/05/2013  _x86_64_    (2 CPU)

07:10:04     CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
07:10:06     all   55,75    0,00    2,25    0,00    0,00    0,00    0,00    0,00   42,00
07:10:06       0   11,50    0,00    4,50    0,00    0,00    0,00    0,00    0,00   84,00
07:10:06       1  100,00    0,00    0,00    0,00    0,00    0,00    0,00    0,00    0,00

07:10:06     CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
07:10:08     all   54,00    0,00    1,25    2,25    0,00    0,00    0,00    0,00   42,50
07:10:08       0    8,00    0,00    2,50    4,50    0,00    0,00    0,00    0,00   85,00
07:10:08       1  100,00    0,00    0,00    0,00    0,00    0,00    0,00    0,00    0,00

07:10:08     CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest   %idle
07:10:10     all   52,75    0,00    1,75    0,00    0,00    0,00    0,00    0,00   45,50
07:10:10       0    5,50    0,00    3,50    0,00    0,00    0,00    0,00    0,00   91,00
07:10:10       1  100,00    0,00    0,00    0,00    0,00    0,00    0,00    0,00    0,00
...
``````
-

if you are ok with using the terminal, htop is great. It's a improved version of top which displays a visualization of all your cores and their respective loads at the top of the screen.

-
`htop` really is a great program. You can also specify which cores a program(s) can run on if you run it as root. It also allows for sorting, searching, and a bunch of other useful stuff. –  Vreality May 13 '13 at 3:40