If I run uptime, I get something like this:

10:50:30 up 366 days, 23:27,  1 user,  load average: 1.27, 2.06, 1.54

What do those numbers on the end mean? The man page tells me it's "the load average of the system over the last 1, 5, and 15 minutes.". But what is the scale? Is 1.27 high? Low? Does it depend on my system?

  • 2
    I wonder how the load average should be interpreted on a multi-core CPU system. – user4358 Aug 16 '09 at 23:23
  • 3
    As a general rule of thumb, you should divide the load average by the number of CPUs for multi core systems. So a load of 2.0 on a dual core system is roughly equivalent to a 1.0 on a single core system. This isn't totally true, because of things like disk I/O and network traiffic, but load is kind of a rought estimate anyways. – Mike Cooper Jun 19 '12 at 2:54
  • 1
    I found this blog really useful: Understanding Linux CPU Load – atmaish Sep 13 '14 at 14:48

Load average is a gauge of how many processes are on average, concurrently demanding CPU attention.

Generally, if you have one process running at 100%, and it just sits like that for all eternity, you can expect all values to approach '1'.

Generally, this is as efficient computing as you can get, no losses due to context-switches.

However, on modern multitasking OS's, there is more than one thing that needs CPU attention, so under a moderate amount of load from a single process, load average should float between 0.8 and 2.

If you decide to do something insane, like build a kernel with make -j 60, despite only having one logical processor, then load average would rush towards 60, and your computer would be incredibly useless to you (death by context switch).

Also to note, this metric is irrespective of how many cores/CPUs there are. For a two-cored system, running one process that consumes a whole core (leaving the other idle) results in a load average of 1.0. In order to decide how loaded a system is, you'll need to know the number of cores and do the division yourself.

| improve this answer | |
  • 1
    So a load average of less than 1 means "Processes generally never have to wait"? Can I interpret a load average of 2 as "Each process is taking roughly twice as long as it would in ideal conditions"? (I know that there's I/O to worry about as well) – John Fouhy Aug 16 '09 at 23:50
  • 1
    Yes, That makes sense, ignoring IO that is ;) – Kent Fredric Aug 22 '09 at 11:35
  • @KentFredric "Generally, this is as efficient computing as you can get, no losses due to context-switches."...is 1 process running at 100% all the time efficient at all? Surely I am missing something fundamental here. Could you please explain what you meant? I am confused as how can one process hogging all the cpu resources be described as efficient? – Geek Sep 21 '13 at 7:18
  • 2
    I know a process running at 100% doesn't sound very "efficient", but if the process arbitrarily limited itself to use only 20%, it would take 5 times as long. So here efficiency means "optimal resource utilization". – Kent Fredric Nov 10 '13 at 13:48
  • 1
    So for an n-cored system, a load average of n means that each core is/was handling a process 100% of the time and is therefore most efficient? – joshreesjones Sep 19 '14 at 17:38

man 5 proc:

/proc/loadavg The first three fields in this file are load average figures giving the number of jobs in the run queue (state R) or waiting for disk I/O (state D) aver‐ aged over 1, 5, and 15 minutes. They are the same as the load average numbers given by uptime(1) and other programs.

| improve this answer | |

In general it measures the number of active processes at a given time, but the metrics used to calculate it differ on some systems. The only article I've found that explains it fairly well is this one.

| improve this answer | |
  • 2
    That link is dated '03. Linux 2.6 came out since then. ( You'll note they're using 2.0 , Ouch.) The metrics appear to be now somewhat different in practice than the ones stated on that page. – Kent Fredric Aug 16 '09 at 23:27
  • Here's one from end of '06, which isn't that different from the linked article: linuxjournal.com/article/9001 – user4358 Aug 17 '09 at 7:01
  • Your link still works and their terminal output is from 2001 😂 How awesome – MS Berends May 28 '19 at 17:50

I cite from a reference of a course:

Load average is the average of the load number for a given period of time. It takes into account processes that are:

  • Actively running on a CPU.
  • Considered runnable, but waiting for a CPU to become available.
  • Sleeping: i.e., waiting for some kind of resource (typically, I/O) to become available.

I cite further about interpreting load average:

The load average is displayed using three different sets of numbers, as shown in the following example:

The last piece of information is the average load of the system. Assuming our system is a single-CPU system, the 0.25 means that for the past minute, on average, the system has been 25% utilized. 0.12 in the next position means that over the past 5 minutes, on average, the system has been 12% utilized; and 0.15 in the final position means that over the past 15 minutes, on average, the system has been 15% utilized. If we saw a value of 1.00 in the second position, that would imply that the single-CPU system was 100% utilized, on average, over the past 5 minutes; this is good if we want to fully use a system. A value over 1.00 for a single-CPU system implies that the system was over-utilized: there were more processes needing CPU than CPU was available.

If we had more than one CPU, say a quad-CPU system, we would divide the load average numbers by the number of CPUs. In this case, for example, seeing a 1 minute load average of 4.00 implies that the system as a whole was 100% (4.00/4) utilized during the last minute.

Short term increases are usually not a problem. A high peak you see is likely a burst of activity, not a new level. For example, at start up, many processes start and then activity settles down. If a high peak is seen in the 5 and 15 minute load averages, it would may be cause for concern.

| improve this answer | |
  • It'd be handy to add a link to your reference. – Pierz Jan 26 '17 at 10:42
  • That's difficult. It's an online course from the Linux Foundation to prepare for the LFCS exam. – Ely Jan 26 '17 at 11:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.