Elapsed real time


Elapsed real time, real time, wall-clock time, or wall time is the actual time taken from the start of 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, 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 and run-time dependent factors, e.g. programmed delays or waiting for system resources 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 six seconds, 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 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.

In simulation

The term wall-clock time has also found widespread adoption in computer simulation, to distinguish between the simulation time, and the time as it passes for the user of the simulation tool.