]> git.saurik.com Git - apple/system_cmds.git/blame - latency.tproj/latency.1
system_cmds-541.tar.gz
[apple/system_cmds.git] / latency.tproj / latency.1
CommitLineData
1815bff5
A
1.\" Copyright (c) 2000, Apple Computer, Inc. All rights reserved.
2.\"
3.Dd March 28, 2000
4.Dt LATENCY 1
5.Os "Mac OS X"
6.Sh NAME
7.Nm latency
8.Nd monitors scheduling and interrupt latency
9.Sh SYNOPSIS
10.Nm latency
8459d725 11.Op Fl p
c03df0e9 12.Op Fl h
8459d725 13.Op Fl m
1815bff5
A
14.Op Fl st Ar threshold
15.Op Fl it Ar threshold
8459d725
A
16.Op Fl c Ar code_file
17.Op Fl l Ar log_file
18.Op Fl R Ar raw_file
1815bff5
A
19.Op Fl n Ar kernel
20.Sh DESCRIPTION
20e66415 21The
1815bff5 22.Nm latency
34d340d7
A
23utility provides scheduling and interrupt-latency statistics.
24Due to the kernel tracing facility it uses to operate,
25the command requires root privileges.
1815bff5
A
26.Pp
27The arguments are as follows:
28.Bl -tag -width Ds
34d340d7
A
29.\" ==========
30.It Fl c Ar code_file
1815bff5
A
31When the
32.Fl c
34d340d7 33option is specified, it takes a path to a code file
20e66415 34that contains the mappings for the system calls.
34d340d7
A
35This option overrides the default location of the system call code file,
36which is found in /usr/share/misc/trace.codes.
37.\" ==========
8459d725
A
38.It Fl h
39Display high resolution interrupt latencies and write them to latencies.csv (truncate existing file) upon exit.
40.\" ==========
41.It Fl m
42Display per-CPU interrupt latency statistics.
34d340d7
A
43.\" ==========
44.It Fl it Ar threshold
45Set the interrupt latency threshold,
46expressed in microseconds.
47If the latency exceeds this value,
48and a log file has been specified,
49a record of what occurred during this time is recorded.
50.\" ==========
51.It Fl l Ar log_file
52Specifies a log file that is written to when
53either the interrupt or scheduling latency is exceeded.
54.\" ==========
55.It Fl n Ar kernel
1815bff5
A
56By default,
57.Nm latency
20e66415
A
58acts on the default /mach_kernel.
59This option allows you to specify an alternate booted kernel.
34d340d7 60.\" ==========
8459d725
A
61.It Fl p Ar priority
62Specifies the priority level to observe scheduler latencies for.
34d340d7
A
63.\" ==========
64.It Fl st Ar threshold
65Set the scheduler latency threshold in microseconds.
66If latency exceeds this, and a log file has been specified,
67a record of what occurred during this time is recorded.
8459d725
A
68.\" ==========
69.It Fl R Ar raw_file
70Specifies a raw trace file to use as input.
1815bff5
A
71.El
72.Pp
73The data columns displayed are as follows:
34d340d7 74.Bl -tag -width LAST_PATHNAME_WAITED_FOR
1815bff5 75.It SCHEDULER
20e66415 76The number of context switches that fall within the described delay.
1815bff5 77.It INTERRUPTS
20e66415 78The number of interrupts that fall within the described delay.
1815bff5
A
79.El
80.Pp
81The
82.Nm latency
20e66415 83utility is also SIGWINCH savvy, so adjusting your window geometry will change
1815bff5
A
84the list of delay values displayed.
85.Sh SAMPLE USAGE
86.Pp
8459d725 87latency -p 97 -st 20000 -it 1000 -l /var/tmp/latency.log
1815bff5 88.Pp
20e66415 89The
1815bff5 90.Nm latency
8459d725 91utility will watch threads with priority 97 for scheduling latencies.
20e66415
A
92The threshold for the scheduler is set to 20000 microseconds.
93The threshold for interrupts is set to 1000 microseconds.
94Latencies that exceed these thresholds will be logged in /var/tmp/latency.log.
1815bff5 95.Sh SEE ALSO
20e66415 96.Xr fs_usage 1 ,
34d340d7
A
97.Xr sc_usage 1 ,
98.Xr top 1