Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c13f0d3c authored by Ingo Molnar's avatar Ingo Molnar
Browse files

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: default avatarIngo Molnar <mingo@elte.hu>
parent 459ec28a
Loading
Loading
Loading
Loading
+19 −3
Original line number Diff line number Diff line
@@ -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
-------
+6 −1
Original line number Diff line number Diff line
@@ -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);
	}