Top and mate-system-monitor divirge wildly

I’m beginning to thin that the mate system monitor tool is fatally flawed.

I’m doing an rsync backup of my system (~1.5TB) and no process in the mate system monitor shows more than 1% CPU usage in the process table when sorted by cpu% in mate system monitor.

But in top the two rsync threads show 30-60% cpu usage.

What gives?

The CPU “history” plot seems to be more in line with the top reporting although it doesn’t show what is using the cpus.

Maybe the monitor does not show I/O activity.
Check using htop:

sudo apt install htop
htop

If you see that a lot of your CPU usage is red (I/O & other Kernel-mode activity)

Check that All processes is set in the View menu and that Dependencies are unchecked. I'm a bit puzzled, as I have not noticed any differences in MATE System Monitor and top.

There is a Solaris mode setting in System Monitor which divides CPU % by the number of processors, this might be set.

When it's off:

  • Process using 1 CPU core = 100%
  • Process using 2 CPU cores = 200%

When it's on (for a quad core CPU):

  • Process using 1 core = 25%
  • Process using 2 and a bit cores = 54%

In man top:

The task's share of the elapsed CPU time since the last screen update, expressed as a percentage of total CPU time.

In a true SMP environment, if a process is multi-threaded and top is not operating in Threads mode, amounts greater than 100% may be reported. You toggle Threads mode with the `H' interactive command.

Also for multi-processor environments, if Irix mode is Off, top will operate in Solaris mode where a task's cpu usage will be divided by the total number of CPUs. You toggle Irix/Solaris modes with the `I' interactive command.

1 Like

All the options in the view menu are “greyed out” and don’t change or do anything.

The CPU History plot is pretty much in line with top, but the process list doesn’t seem to show much of anything consuming CPU.

I’ll give htop a try, thanks for the suggestion.

The process list works fine in 14.04. After updating one of my machines to 16.04, like you I’ve noticed that sorting by CPU% is basically useless. It looks like this is caused by all the cgroup/parent use (ie systemd), so the list ends up predominantly sorted alphabetically rather than by CPU.

The fix should be simple: just Don’t Do That if the user is sorting by anything other than process name. Hopefully it’ll get fixed before 18.04, but it may be too late for that already. :frowning:

Also, as you say, there are times that processes simply don’t show up in it at all. (I think xapian is a common one). Again, the root cause is this group/parent issue, with the high-load process being owned by a different user and thus excluded from the systemd tree for your user (since the busy processes are all root, and you’re not). Make sure you have the “All Processes” radio button checked in the “View” menu.

add> clearing the “Dependencies” checkbox looks like it fixes the sorting failure.