latency

LATENCY(1)                   General Commands Manual                  LATENCY(1)

NAME
     latency – monitors scheduling and interrupt latency

SYNOPSIS
     latency [-p priority] [-h] [-m] [-st threshold] [-it threshold]
             [-c code_file] [-l log_file] [-R raw_file] [-n kernel]

DESCRIPTION
     The latency utility provides scheduling and interrupt-latency statistics.
     Due to the kernel tracing facility it uses to operate, the command requires
     root privileges.

     The arguments are as follows:

     -c code_file
             When the -c option is specified, it takes a path to a code file
             that contains the mappings for the system calls.  This option
             overrides the default location of the system call code file, which
             is found in /usr/share/misc/trace.codes.

     -h      Display high resolution interrupt latencies and write them to
             latencies.csv (truncate existing file) upon exit.

     -m      Display per-CPU interrupt latency statistics.

     -it threshold
             Set the interrupt latency threshold, expressed in microseconds.  If
             the latency exceeds this value, and a log file has been specified,
             a record of what occurred during this time is recorded.

     -l log_file
             Specifies a log file that is written to when either the interrupt
             or scheduling latency is exceeded.

     -n kernel
             By default, latency acts on the default
             /System/Library/Kernels/kernel.development.  This option allows you
             to specify an alternate booted kernel.

     -p priority
             Specifies the priority level to observe scheduler latencies for.
             The default is realtime ( 97 ). A range of priorities to monitor
             can also be provided, for example 31-47 or 0-127

     -st threshold
             Set the scheduler latency threshold in microseconds.  If latency
             exceeds this, and a log file has been specified, a record of what
             occurred during this time is recorded.

     -R raw_file
             Specifies a raw trace file to use as input.

     The data columns displayed are as follows:

     SCHEDULER                 The number of context switches that fall within
                               the described delay.

     INTERRUPTS                The number of interrupts that fall within the
                               described delay.

     The latency utility is also SIGWINCH savvy, so adjusting your window
     geometry will change the list of delay values displayed.

SAMPLE USAGE
     latency -p 97 -st 20000 -it 1000 -l /var/tmp/latency.log

     The latency utility will watch threads with priority 97 for scheduling
     latencies.  The threshold for the scheduler is set to 20000 microseconds.
     The threshold for interrupts is set to 1000 microseconds.  Latencies that
     exceed these thresholds will be logged in /var/tmp/latency.log.

SEE ALSO
     fs_usage(1), sc_usage(1), top(1)

macOS                            March 28, 2000                            macOS