perf stat: Add computation of TopDown formulas
Implement the TopDown formulas in 'perf stat'. The topdown basic metrics reported by the kernel are collected, and the formulas are computed and output as normal metrics. See the kernel commit exporting the events for details on the used metrics. Committer note: Output example: # perf stat --topdown -a usleep 1 Performance counter stats for 'system wide': retiring bad speculation frontend bound backend bound S0-C0 2 23.8% 11.6% 28.3% 36.3% S0-C1 2 16.2% 15.7% 36.5% 31.6% 0.000579956 seconds time elapsed # v2: Always print all metrics, only use thresholds for coloring. v3: Mark retiring over threshold green, not red. v4: Only print one decimal digit Fix color printing of one metric v5: Avoid printing -0.0 v6: Remove extra frontend event lookup Signed-off-by: Andi Kleen <ak@linux.intel.com> Acked-by: Jiri Olsa <jolsa@kernel.org> Link: http://lkml.kernel.org/r/1464119559-17203-2-git-send-email-andi@firstfloor.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:

committed by
Arnaldo Carvalho de Melo

parent
44b1e60ab5
commit
239bd47f83
@@ -17,6 +17,11 @@ enum perf_stat_evsel_id {
|
||||
PERF_STAT_EVSEL_ID__TRANSACTION_START,
|
||||
PERF_STAT_EVSEL_ID__ELISION_START,
|
||||
PERF_STAT_EVSEL_ID__CYCLES_IN_TX_CP,
|
||||
PERF_STAT_EVSEL_ID__TOPDOWN_TOTAL_SLOTS,
|
||||
PERF_STAT_EVSEL_ID__TOPDOWN_SLOTS_ISSUED,
|
||||
PERF_STAT_EVSEL_ID__TOPDOWN_SLOTS_RETIRED,
|
||||
PERF_STAT_EVSEL_ID__TOPDOWN_FETCH_BUBBLES,
|
||||
PERF_STAT_EVSEL_ID__TOPDOWN_RECOVERY_BUBBLES,
|
||||
PERF_STAT_EVSEL_ID__MAX,
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user