TIME(1)

NAME
time - time command execution

SYNOPSIS
time [-clpt] [-f fmt] command [argument ...]

DESCRIPTION
The time utility executes and times command. After the command finishes, time writes the total elapsed time (wall clock time), (“real”), the CPU time spent executing command at user level (“user”), and the CPU time spent executing in the operating system kernel (“sys”), to the standard error stream. Times are reported in seconds.

Available options:

-c  Displays information in the format used by default the time builtin of csh(1) uses (%Uu %Ss %E %P %X+%Dk %I+%Oio %Fpf+%Ww).

-f  Specify a time format using the csh(1) time builtin syntax. The following sequences may be used in the format string:

    %U  The time the process spent in user mode in cpu seconds.
    %S  The time the process spent in kernel mode in cpu seconds.
    %E  The elapsed (wall clock) time in seconds.
    %P  The CPU percentage computed as (%U + %S) / %E.
    %W  Number of times the process was swapped.
    %X  The average amount in (shared) text space used in Kbytes.
    %D  The average amount in (unshared) data/stack space used in Kbytes.
    %K  The total space used (%X + %D) in Kbytes.
    %M  The maximum memory the process had in use at any time in Kbytes.
    %F  The number of major page faults (page needed to be brought from disk).
    %R  The number of minor page faults.
    %I  The number of input operations.
    %O  The number of output operations.
    %r  The number of socket messages received.
    %s  The number of socket messages sent.
    %k  The number of signals received.
    %w  The number of voluntary context switches (waits).
    %c  The number of involuntary context switches.

-l  Lists resource utilization information. The contents of the command process's rusage structure are printed; see below.

-p  The output is formatted as specified by p1003.2-92.

-t  Displays information in the format used by default the time builtin of tcsh(1) uses (%Uu %Ss %E %P\t%X+%Dk %I+%Oio %Fpf+%Ww) with three decimal places for time values.

Some shells, such as csh(1) and ksh(1), have their own and syntactically different built-in version of time. The utility described here is available as /usr/bin/time to users of these shells.

  Resource Utilization
If the -l option is given, the following resource usage information is displayed in addition to the timing information:
maximum resident set size
average shared memory size
average unshared data size
average unshared stack size
page reclaims
page faults
swaps
block input operations
block output operations
messages sent
messages received
signals received
voluntary context switches
involuntary context switches
Resource usage is the total for the execution of command and any child processes it spawns, as per wait4(2).

FILES
<sys/resource.h>

EXIT STATUS
The time utility exits with one of the following values:

1-125
    An error occurred in the time utility.

126 The command was found but could not be invoked.

127 The command could not be found.

Otherwise, the exit status of time will be that of command.

SEE ALSO
csh(1), ksh(1), clock_gettime(2), getrusage(2), wait4(2)

STANDARDS
The time utility conforms to p1003.2-92.

BUGS
The granularity of seconds on microprocessors is crude and can result in times being reported for CPU usage which are too large by a second.