Elapsed real time, real time, wall-clock time, wall time, or walltime is the actual time taken from the start of a
computer program
A computer program is a sequence or set of instructions in a programming language for a computer to execute. Computer programs are one component of software, which also includes documentation and other intangible components.
A computer program ...
to the end. In other words, it is the difference between the time at which a task finishes and the time at which the task started.
Wall time is thus different from
CPU time
CPU time (or process time) is the amount of time for which a central processing unit (CPU) was used for processing instructions of a computer program or operating system, as opposed to elapsed time, which includes for example, waiting for inpu ...
, which measures only the time during which the processor is actively working on a certain task. The difference between the two can arise from
architecture
Architecture is the art and technique of designing and building, as distinguished from the skills associated with construction. It is both the process and the product of sketching, conceiving, planning, designing, and constructing building ...
and
run-time dependent factors, e.g.
programmed delays or waiting for
system resources
In computing, a system resource, or simple resource, is any physical or virtual component of limited availability within a computer system. All connected devices and internal system components are resources. Virtual system resources include fi ...
to become available. Consider the example of a mathematical program that reports that it has used "CPU time 0m0.04s, Wall time 6m6.01s". This means that while the program was active for six minutes and one second, during that time the computer's processor spent only 4/100 of a second performing calculations for the program.
Conversely, programs
running in parallel on more than one processing unit can spend CPU time many times beyond their elapsed time. Since in
concurrent computing
Concurrent computing is a form of computing in which several computations are executed '' concurrently''—during overlapping time periods—instead of ''sequentially—''with one completing before the next starts.
This is a property of a syst ...
the definition of elapsed time is non-trivial, the conceptualization of the elapsed time as measured on a separate, independent wall clock is convenient.
Another definition of "wall time" is the measurement of time via a separate, independent clock as opposed to the local system's internal time, i.e. with regard to the difference between the two.
"Real time" in the meaning of "wall time" should not be confused with
real-time computing
Real-time computing (RTC) is the computer science term for hardware and software systems subject to a "real-time constraint", for example from event to system response. Real-time programs must guarantee response within specified time constrai ...
.
In simulation
The term wall-clock time has also found widespread adoption in computer simulation, to distinguish between (1) the (often compressed or expanded) simulation time, and (2) the time as it passes for the user of the simulation tool.
See also
*
CPU time
CPU time (or process time) is the amount of time for which a central processing unit (CPU) was used for processing instructions of a computer program or operating system, as opposed to elapsed time, which includes for example, waiting for inpu ...
*
Process (computing)
In computing, a process is the instance of a computer program that is being executed by one or many threads. There are many different process models, some of which are light weight, but almost all processes (even entire virtual machines) are r ...
*
System time
In computer science and computer programming, system time represents a computer system's notion of the passage of time. In this sense, ''time'' also includes the passing of days on the calendar.
System time is measured by a ''system clock'', w ...
References
Computing terminology
Time
{{time-stub