|
The system load is a UNIX computing term that describes the amount of work that a computer system is doing. The load average is the system load over a period of time. It is conventionally given as three numbers that represent the system load during the last one, five, and fifteen minute periods. Filiation of Unix and Unix-like systems Unix (officially trademarked as UNIX®) is a computer operating system originally developed in the 1960s and 1970s by a group of AT&T employees at Bell Labs including Ken Thompson, Dennis Ritchie and Douglas McIlroy. ...
Originally, the word computing was synonymous with counting and calculating, and a science and technology that deals with the original sense of computing mathematical calculations. ...
Load calculation under Unix(-like) systems All Unix(-like) systems generate a metric of three "load average" numbers in the kernel. These can be most easily queried from the Unix shell by running the "uptime" command: Screenshot of a sample Bash session, taken on Gentoo Linux. ...
Uptime is a measure of the time a computer system has been up and running. ...
linux # linux #uptime 09:53:15 up 119 days, 19:08, 10 users, load average: 3.73 7.98 0.50 linux # The "w" and "top" commands show the same three load average numbers, as do a range of graphical user interface utilities. In many Unix-like operating systems, the top command produces a constantly-updated list of all resident processes, listed in order of CPU usage. ...
A graphical user interface (or GUI, often pronounced gooey), is a particular case of user interface for interacting with a computer which employs graphical images and widgets in addition to text to represent the information and actions available to the user. ...
An idle computer has a load number of 0 and each process that is using CPU or waiting for CPU adds to the load number by 1. Most UNIX systems count only processes in the running (on CPU) or runnable (waiting for CPU) states. However, Linux also includes processes in uninterruptible sleep states (usually waiting for disk activity), which can lead to markedly different results if many processes are blocked in I/O due to a busy or stalled I/O system. For example, Linux includes processes that are blocked on NFS I/O, leading to elevated load average during an NFS server failure, which does not reflect an actual increase in CPU use. This article or section does not cite its references or sources. ...
The load average is calculated as the exponentially damped moving average of the load number. The three values of load average refer to the past one, five, and fifteen minutes of system operation. It has been suggested that this article or section be merged with TWAP and VWAP (Discuss) A moving average, in finance and especially in technical analysis, is one of a family of similar statistical techniques used to analyze time series data. ...
For single CPU systems that are CPU-bound, one can think of load average as a percentage of system utilization during the respective time period. For systems with multiple CPUs, the number needs to be divided by the number of CPUs in order to get a percentage. For example a load average of "3.73 7.98 0.50" on a single CPU system can be interpreted as: - the CPU was overloaded by 373% (needed to do 373% as much work as it can do in a minute) during the last minute.
- it was only busy half of the time for the last fifteen minutes
Rather, this means that this CPU could have handled all of the work scheduled for the last minute if it were 3.73 times as fast (or if there were 3.73 or rather 4 times as many CPUs), but over the last fifteen minutes it was twice as fast as it needed to be to keep up. Conversely, in a system with four CPUs, a load average of 3.73 would indicate that there were on average 3.73 processes running or queued, that is, that the system is not lacking in this respect because 3.73 is still lower than 4. On modern UNIX systems, the treatment of threading with respect to load averages varies. Some systems treat threads as processes for the purposes of load average calculation: each thread waiting to run will add 1 to the load. However, other systems, especially systems implementing M:N threading, use different strategies, such as counting the process exactly once for the purpose of load (regardless of the number of threads), or counting only threads currently exposed by the user thread scheduler to the kernel, which may depend on the level of concurrency set on the process. On many systems, the load average is generated by sampling the state of the scheduler on a timer rather than recalculated on all pertinent scheduler events. This is done for performance reasons, as scheduler events occur frequently. As a result, sampling error can lead to the load average inaccurately representing actual system behavior. This can be a particular problem for programs that wake up at a fixed interval that aligns with load average sampling, in which case the process may be under- or over-represented in the load average numbers.
Load calculation under Windows systems On Microsoft Windows based systems, the load average can be calculated in a similar manner, although Windows has no tradition for use of the load average as it is known on Unix based systems. Image File history File links Circle-question-red. ...
Microsoft Windows is the name of several families of proprietary software operating systems by Microsoft. ...
Important things to note Note that the load average is not a measure solely of CPU utilization, it is also a measure of disk I/O and, sometimes, network performance. It is only one factor in overall system performance (and is often the least significant).
Other meanings Load (program linking and loading) When loading compiled programs into computer memory, they are linked to the relevant program resources, and then the fully resolved codes were loaded into computer memory, for execution. This type of program is often called a linking loader. The terms storage (U.K.) or memory (U.S.) refer to the parts of a digital computer that retain physical state (data) for some interval of time, possibly even after electrical power to the computer is turned off. ...
Load (database loading) When loading data into a database management system, a program designed to read input data, and then place it into database tables, is called a loader. A database management system (DBMS) is a system or software designed to manage a database, and run operations on the data requested by numerous clients. ...
See also - uptime for load average
- top for an overall system view
- iostat for IO statistics
- netstat for network statistics
- mpstat for CPU statistics
Uptime is a measure of the time a computer system has been up and running. ...
In many Unix-like operating systems, the top command produces a constantly-updated list of all resident processes, listed in order of CPU usage. ...
iostat (input/output statistics) is a computer operating system monitoring tool used to collect and display input and output device statistics. ...
Screenshot of netstat in Windows XP Professional netstat is a command-line tool that displays a list of the active network connections the computer currently has, both incoming and outgoing. ...
External links |