Ingo Molnar | 0a02ad9 | 2009-09-11 12:12:54 +0200 | [diff] [blame] | 1 | perf-sched(1) |
| 2 | ============== |
| 3 | |
| 4 | NAME |
| 5 | ---- |
Ingo Molnar | c13f0d3 | 2009-09-13 16:51:04 +0200 | [diff] [blame] | 6 | perf-sched - Tool to trace/measure scheduler properties (latencies) |
Ingo Molnar | 0a02ad9 | 2009-09-11 12:12:54 +0200 | [diff] [blame] | 7 | |
| 8 | SYNOPSIS |
| 9 | -------- |
| 10 | [verse] |
Shawn Bohrer | 1eacc94 | 2010-11-30 19:57:18 -0600 | [diff] [blame] | 11 | 'perf sched' {record|latency|map|replay|trace} |
Ingo Molnar | 0a02ad9 | 2009-09-11 12:12:54 +0200 | [diff] [blame] | 12 | |
| 13 | DESCRIPTION |
| 14 | ----------- |
Shawn Bohrer | 1eacc94 | 2010-11-30 19:57:18 -0600 | [diff] [blame] | 15 | There are five variants of perf sched: |
Ingo Molnar | c13f0d3 | 2009-09-13 16:51:04 +0200 | [diff] [blame] | 16 | |
| 17 | 'perf sched record <command>' to record the scheduling events |
| 18 | of an arbitrary workload. |
| 19 | |
| 20 | 'perf sched latency' to report the per task scheduling latencies |
| 21 | and other scheduling properties of the workload. |
| 22 | |
| 23 | 'perf sched trace' to see a detailed trace of the workload that |
| 24 | was recorded. |
| 25 | |
| 26 | 'perf sched replay' to simulate the workload that was recorded |
| 27 | via perf sched record. (this is done by starting up mockup threads |
| 28 | that mimic the workload based on the events in the trace. These |
| 29 | threads can then replay the timings (CPU runtime and sleep patterns) |
Randy Dunlap | 854c554 | 2010-03-31 11:31:00 -0700 | [diff] [blame] | 30 | of the workload as it occurred when it was recorded - and can repeat |
Ingo Molnar | c13f0d3 | 2009-09-13 16:51:04 +0200 | [diff] [blame] | 31 | it a number of times, measuring its performance.) |
Ingo Molnar | 0a02ad9 | 2009-09-11 12:12:54 +0200 | [diff] [blame] | 32 | |
Shawn Bohrer | 1eacc94 | 2010-11-30 19:57:18 -0600 | [diff] [blame] | 33 | 'perf sched map' to print a textual context-switching outline of |
| 34 | workload captured via perf sched record. Columns stand for |
| 35 | individual CPUs, and the two-letter shortcuts stand for tasks that |
| 36 | are running on a CPU. A '*' denotes the CPU that had the event, and |
| 37 | a dot signals an idle CPU. |
| 38 | |
Ingo Molnar | 0a02ad9 | 2009-09-11 12:12:54 +0200 | [diff] [blame] | 39 | OPTIONS |
| 40 | ------- |
Shawn Bohrer | 1eacc94 | 2010-11-30 19:57:18 -0600 | [diff] [blame] | 41 | -i:: |
| 42 | --input=<file>:: |
| 43 | Input file name. (default: perf.data) |
| 44 | |
| 45 | -v:: |
| 46 | --verbose:: |
| 47 | Be more verbose. (show symbol address, etc) |
| 48 | |
Ingo Molnar | 0a02ad9 | 2009-09-11 12:12:54 +0200 | [diff] [blame] | 49 | -D:: |
| 50 | --dump-raw-trace=:: |
| 51 | Display verbose dump of the sched data. |
| 52 | |
| 53 | SEE ALSO |
| 54 | -------- |
| 55 | linkperf:perf-record[1] |