perf sched: Add 'perf sched trace', improve documentation

Alias 'perf sched trace' to 'perf trace', for workflow completeness.

Add a bit of documentation for perf sched.

Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Ingo Molnar 2009-09-13 16:51:04 +02:00
parent 459ec28ab4
commit c13f0d3c81
2 changed files with 25 additions and 4 deletions

View File

@ -3,16 +3,32 @@ perf-sched(1)
NAME
----
perf-sched - Read perf.data (created by perf record) and display sched output
perf-sched - Tool to trace/measure scheduler properties (latencies)
SYNOPSIS
--------
[verse]
'perf sched' [-i <file> | --input=file] symbol_name
'perf sched' {record|latency|replay|trace}
DESCRIPTION
-----------
This command reads the input file and displays the latencies recorded.
There's four variants of perf sched:
'perf sched record <command>' to record the scheduling events
of an arbitrary workload.
'perf sched latency' to report the per task scheduling latencies
and other scheduling properties of the workload.
'perf sched trace' to see a detailed trace of the workload that
was recorded.
'perf sched replay' to simulate the workload that was recorded
via perf sched record. (this is done by starting up mockup threads
that mimic the workload based on the events in the trace. These
threads can then replay the timings (CPU runtime and sleep patterns)
of the workload as it occured when it was recorded - and can repeat
it a number of times, measuring its performance.)
OPTIONS
-------

View File

@ -1597,7 +1597,7 @@ static int read_events(void)
}
static const char * const sched_usage[] = {
"perf sched [<options>] {record|latency|replay}",
"perf sched [<options>] {record|latency|replay|trace}",
NULL
};
@ -1719,6 +1719,11 @@ int cmd_sched(int argc, const char **argv, const char *prefix __used)
usage_with_options(replay_usage, replay_options);
}
__cmd_replay();
} else if (!strcmp(argv[0], "trace")) {
/*
* Aliased to 'perf trace' for now:
*/
return cmd_trace(argc, argv, prefix);
} else {
usage_with_options(sched_usage, sched_options);
}