aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/perf/Documentation/perf-sched.txt22
-rw-r--r--tools/perf/builtin-sched.c7
2 files changed, 25 insertions, 4 deletions
diff --git a/tools/perf/Documentation/perf-sched.txt b/tools/perf/Documentation/perf-sched.txt
index 056320eecb3a..1ce79198997b 100644
--- a/tools/perf/Documentation/perf-sched.txt
+++ b/tools/perf/Documentation/perf-sched.txt
@@ -3,16 +3,32 @@ perf-sched(1)
3 3
4NAME 4NAME
5---- 5----
6perf-sched - Read perf.data (created by perf record) and display sched output 6perf-sched - Tool to trace/measure scheduler properties (latencies)
7 7
8SYNOPSIS 8SYNOPSIS
9-------- 9--------
10[verse] 10[verse]
11'perf sched' [-i <file> | --input=file] symbol_name 11'perf sched' {record|latency|replay|trace}
12 12
13DESCRIPTION 13DESCRIPTION
14----------- 14-----------
15This command reads the input file and displays the latencies recorded. 15There's four variants of perf sched:
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)
30 of the workload as it occured when it was recorded - and can repeat
31 it a number of times, measuring its performance.)
16 32
17OPTIONS 33OPTIONS
18------- 34-------
diff --git a/tools/perf/builtin-sched.c b/tools/perf/builtin-sched.c
index ede40c1429a8..8db0fd222f80 100644
--- a/tools/perf/builtin-sched.c
+++ b/tools/perf/builtin-sched.c
@@ -1597,7 +1597,7 @@ more:
1597} 1597}
1598 1598
1599static const char * const sched_usage[] = { 1599static const char * const sched_usage[] = {
1600 "perf sched [<options>] {record|latency|replay}", 1600 "perf sched [<options>] {record|latency|replay|trace}",
1601 NULL 1601 NULL
1602}; 1602};
1603 1603
@@ -1719,6 +1719,11 @@ int cmd_sched(int argc, const char **argv, const char *prefix __used)
1719 usage_with_options(replay_usage, replay_options); 1719 usage_with_options(replay_usage, replay_options);
1720 } 1720 }
1721 __cmd_replay(); 1721 __cmd_replay();
1722 } else if (!strcmp(argv[0], "trace")) {
1723 /*
1724 * Aliased to 'perf trace' for now:
1725 */
1726 return cmd_trace(argc, argv, prefix);
1722 } else { 1727 } else {
1723 usage_with_options(sched_usage, sched_options); 1728 usage_with_options(sched_usage, sched_options);
1724 } 1729 }