From c13f0d3c8165e9592102687fa999da0a0d9c3724 Mon Sep 17 00:00:00 2001 From: Ingo Molnar Date: Sun, 13 Sep 2009 16:51:04 +0200 Subject: [PATCH] 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 Cc: Mike Galbraith Cc: Paul Mackerras Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker LKML-Reference: Signed-off-by: Ingo Molnar --- tools/perf/Documentation/perf-sched.txt | 22 +++++++++++++++++++--- tools/perf/builtin-sched.c | 7 ++++++- 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) 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 | --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 ' 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 ------- 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: } static const char * const sched_usage[] = { - "perf sched [] {record|latency|replay}", + "perf sched [] {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); }