Sponsored Content
Special Forums UNIX and Linux Applications Infrastructure Monitoring Multiple Processors and Load Average Post 302842311 by Smiling Dragon on Thursday 8th of August 2013 10:29:59 PM
Old 08-08-2013
"Load average" in top is actually the run queue average length.
Over 1 means on average things are waiting on the cpu, below 1 means on average no-one has to wait. Don't confuse this with %cpu - it's not like that.

The bold summary line show percentages should always be across all the cores, but can get confused if you have the wrong version of top, so always add them up to check you get 100 the first time you use top on a new machine to check this.

As for process %cpu, that depends on your version of top - if it's compiled for your arcihtecture properly, it understands and the % is how much of one CPU is beign used (so more than 100% would require multithreading across multiple cores).

To complicate matters further, a system running at 100% cpu might not be terrible if your shceduler is beign smart - it could well be that you've got a bunch of low priority things in the background that get a bunch of work done while the system is idel, then throtle back when you need it - ie sitting at 100% you might still find that your CPU hungry command you want to run goes just fine and the cpu load happily stays at 100% during and after. It's often a waste of time to monitor CPU percentages overall.
Better is to look at:
* overall wait % ("wa") - you don't want that to get very high or it indicates something is thrashing in swap or disk.
* run queue length

In your java example:
Code:
PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
25437 root      23   0 22.7g  22g 9272 S 142.9 70.6  42140:15 java

Its saying that you have a Priority 23 task, (lower numbers get priority on CPU time) using 70.6% of your free memory and 142.9% of one CPU (ie it's multithreaded and is using about 1.5 Cores).

Last edited by Smiling Dragon; 08-08-2013 at 11:34 PM.. Reason: added the java example breakdown.
This User Gave Thanks to Smiling Dragon For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

load average

we have an unix system which has load average normally about 20. but while i am running a particular unix batch which performs heavy operations on filesystem and database average load reduces to 15. how can we explain this situation? while running that batch idle cpu time is about %60-65... (0 Replies)
Discussion started by: gfhgfnhhn
0 Replies

2. UNIX for Dummies Questions & Answers

Load Average

Hello all, I have a question about load averages. I've read the man pages for the uptime and w command for two or three different flavors of Unix (Red Hat, Tru64, Solaris). All of them agree that in the output of the 2 aforementioned commands, you are given the load average for the box, but... (3 Replies)
Discussion started by: Heathe_Kyle
3 Replies

3. Shell Programming and Scripting

Determening load average.

Hi, I'm new to shell scripting. I need to make a script to add on to my cronjobs. The script must get the value of load average from my server and if its greater than 10 it should stop my apache service. I cant find a way to get the value of load average in integer type to do the check. Any... (4 Replies)
Discussion started by: jibsonline
4 Replies

4. Solaris

load average query.

Hi, i have installed solaris 10 on t-5120 sparc enterprise. I am little surprised to see load average of 2 or around on this OS. when checked with ps command following process is using highest CPU. looks like it is running for long time and does not want to stop, but I do not know... (5 Replies)
Discussion started by: upengan78
5 Replies

5. UNIX for Advanced & Expert Users

Replicate CPU load to other processors in server

Hi Folks, We have 6 processors in our sun server. I do see that CPU usage by one of the processor is always more than 70-80% and for remaining 5 processors, its only 20%. Is there a way to delegate the excess CPU load on one of the processors in server to other processors in same server? Is... (3 Replies)
Discussion started by: vaibhav.kanchan
3 Replies

6. UNIX for Dummies Questions & Answers

Please Help me in my load average

Hello AlL,.. I want from experts to help me as my load average is increased and i dont know where is the problem !! this is my top result : root@a4s # top top - 11:30:38 up 40 min, 1 user, load average: 3.06, 2.49, 4.66 Mem: 8168788k total, 2889596k used, 5279192k free, 47792k... (3 Replies)
Discussion started by: black-code
3 Replies

7. UNIX for Dummies Questions & Answers

Load Average threshold

What should be the threshold for load average of a quad core processor? What constitutes "good" and "bad" load average values? (2 Replies)
Discussion started by: proactiveaditya
2 Replies

8. UNIX for Advanced & Expert Users

Load average in UNIX

Hi , I am using 48 CPU sunOS server at my work. The application has facility to check the current load average before starting a new process to control the load. Right now it is configured as 48. So it does mean that each CPU can take maximum one proces and no processe is waiting. ... (2 Replies)
Discussion started by: kumaran_5555
2 Replies

9. Solaris

Load Average and Lwps

NPROC USERNAME SWAP RSS MEMORY TIME CPU 320 oracle 23G 22G 69% 582:55:11 85% 47 root 148M 101M 0.3% 99:29:40 0.3% 53 rafmsdb 38M 60M 0.2% 0:46:17 0.1% 1 smmsp 1296K 5440K 0.0% 0:00:08 0.0% 7 daemon ... (2 Replies)
Discussion started by: snjksh
2 Replies

10. UNIX for Dummies Questions & Answers

Help with load average?

how load average is calculated and what exactly is it difference between cpu% and load average (9 Replies)
Discussion started by: robo
9 Replies
CPU(1)							      General Commands Manual							    CPU(1)

NAME
cpu - connection to cpu server SYNOPSIS
cpu [ -h server ] [ -c cmd args ... ] DESCRIPTION
Cpu starts an rc(1) running on the server machine, or the machine named in the $cpu environment variable if there is no -h option. Rc's standard input, output, and error files will be /dev/cons in the name space where the cpu command was invoked. Normally, cpu is run in an 81/2(1) window on a terminal, so rc output goes to that window, and input comes from the keyboard when that window is current. Rc's cur- rent directory is the working directory of the cpu command itself. The name space for the new rc is an analogue of the name space where the cpu command was invoked: it is the same except for architecture- dependent bindings such as /bin and the use of fast paths to file servers, if available. If a -c argument is present, the remainder of the command line is executed by rc on the server, and then cpu exits. The name space is built by running /usr/$user/lib/profile with the root of the invoking name space bound to /mnt/term. The service envi- ronment variable is set to cpu; the cputype and objtype environment variables reflect the server's architecture. FILES
The name space of the terminal side of the cpu command is mounted on the CPU side on directory /mnt/term. SOURCE
/sys/src/cmd/cpu.c SEE ALSO
rc(1), 81/2(1) BUGS
Binds and mounts done after the terminal lib/profile is run are not reflected in the new name space. CPU(1)
All times are GMT -4. The time now is 08:09 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy