Mac Developer Library Developer
Search

 

This manual page is for Mac OS X version 10.9

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • To learn how the manual is organized or to learn about command syntax, read the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Developer Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.




LATENCY(1)                BSD General Commands Manual               LATENCY(1)

NAME
     latency -- monitors scheduling and interrupt latency

SYNOPSIS
     latency [-p] [-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 /mach_kernel.  This option allows you to specify an
             alternate booted kernel.

     -p priority
             Specifies the priority level to observe scheduler latencies for.

     -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)

Mac OS X                        March 28, 2000                        Mac OS X

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.

Feedback