Linux ‘ top ‘ get total of a user’s cpu usage > 100%, with IRIX mode off

cpu usagelinux

I used ' top -bn 1 -u myaccount' to monitor the summary of all the cpu usage of my account.

But sometimes my log shows that the summary adds up to 160% plus.
I'm quite confused, does anybody know why?

my top version is 3.2.3

here's my top of my toprc:

RCfile for "top with windows" # shameless braggin'

Id:a, Mode_altscr=0, Mode_irixps=0, Delay_time=3.000, Curwin=0

========

Irix mode on:

PID %CPU
18119 4.3 162:36.22 java

Irix mode off:

PID %CPU (8 cores machine)
18119 0.6 162:36.22 java

I mean in the second condition , all my process's cpu usage sometimes may add up to 160%

Best Answer

jørgensen explained the CPU usage higher than 100%. Basically, CPU usage is scaled to be 100% at full use of one core. The IRIX mode for top just changes the way the CPU usage is calculated.

The IRIX mode is explained on the man page, which says:

k: %CPU -- CPU usage 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 '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.

and

'I' :Irix/Solaris_Mode_toggle When operating in 'Solaris mode' ('I' toggled Off), a task's cpu usage will be divided by the total number of CPUs. After issuing this command, you'll be informed of the new state of this toggle.

Here is some additional information on top: Analyzing thread CPU usage on Linux.

Related Question