Em Thu, Mar 03, 2016 at 09:21:30AM +0100, Ingo Molnar escreveu: > Hm, there's a 'perf stat' regression that I can see: > > Before: > # 1.59 stalled cycles > per insn > 1,818,488,088 branches # 151.667 M/sec > > > After: > > triton:~/tip> perf stat -a sleep 1 > > 24166678 branches # 2.016 M/sec > > > ... see how the numbers became human-unreadable, losing the big-number > separator? > > I suspect it's due to the following commit: > > fa184776ac27 perf stat: Check existence of frontend/backed stalled cycles
Ok, I inserted Jiri's patch fixing the problem just before the commit (fa184776ac27) that triggers it, so that we don't break bisection for human-readable numbers in 'perf stat'. Its all in a new signed tag, that combines the two outstanding ones (perf-core-for-mingo-20160229 + perf-core-for-mingo-20160302), please consider pulling. - Arnaldo The following changes since commit 675965b00d734c985e4285f5bec7e524d15fc4e1: perf: Export perf_event_sysfs_show() (2016-02-29 09:35:27 +0100) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-20160303 for you to fetch changes up to fb4605ba47e772ff9d62d1d54218a832ec8b3e1d: perf stat: Check for frontend stalled for metrics (2016-03-03 11:10:40 -0300) ---------------------------------------------------------------- perf/core improvements and fixes: User visible: - Check existence of frontend/backed stalled cycles in 'perf stat' (Andi Kleen) - Implement CSV metrics output in 'perf stat' (Andi Kleen) - Support metrics in 'perf stat' --per-core/socket mode (Andi Kleen) - Avoid installing .o files from tools/lib/ into the python extension (Jiri Olsa) - Rename the tracepoint '/format' field that carries the syscall ID from 'nr', that is also the name of some syscalls arguments, to "__syscall_nr", to avoid having multiple fields with the same name, that was breaking the python script skeleton generator from perf.data files (Taeung Song) - Support converting data from bpf events in 'perf data' (Wang Nan) - Fix segfault in 'perf test' hists related entries (Arnaldo Carvalho de Melo) - Fix output of %llu for 64 bit values read on 32 bit machines in libtraceevent (Steven Rostedt) - Fix time stamp rounding issue in libtraceevent (Chaos.Chen) Infrastructure: - Fix setlocale() breakage in the pmu parsing code (Jiri Olsa) - Split libtraceevent's pevent_print_event() (Steven Rostedt) - Librarize some 'perf record' bits to allow handling multiple perf.data files per session (Wang Nan) - Ensure return non-zero rc when mmap fails in 'perf record' (Wang Nan) - Fix double free on 'command_line' in a error path in 'perf script' (Colin Ian King) - Initialize struct sigaction 'sa_flags' field in a 'perf test' entry (Colin Ian King) - Fix various build warnings in turbostat, detected with gcc6 (Colin Ian King) - Use .s extension for preprocessed assembler code (Masahiro Yamada) Signed-off-by: Arnaldo Carvalho de Melo <[email protected]> ---------------------------------------------------------------- Andi Kleen (4): perf stat: Check existence of frontend/backed stalled cycles perf stat: Implement CSV metrics output perf stat: Support metrics in --per-core/socket mode perf stat: Check for frontend stalled for metrics Arnaldo Carvalho de Melo (1): perf test: Fix hists related entries Chaos.Chen (1): tools lib traceevent: Fix time stamp rounding issue Colin Ian King (3): perf script: Fix double free on command_line perf tests: Initialize sa.sa_flags tools/power turbostat: fix various build warnings Jiri Olsa (2): perf tools: Fix python extension build perf tools: Fix locale handling in pmu parsing Masahiro Yamada (1): tools build: Use .s extension for preprocessed assembler code Steven Rostedt (1): tools lib traceevent: Split pevent_print_event() into specific functionality functions Steven Rostedt (Red Hat) (2): tools lib traceevent: Set int_array fields to NULL if freeing from error tools lib traceevent: Fix output of %llu for 64 bit values read on 32 bit machines Taeung Song (2): perf trace: Check and discard not only 'nr' but also '__syscall_nr' tracing/syscalls: Rename "/format" tracepoint field name "nr" to "__syscall_nr: Wang Nan (6): perf data: Support converting data from bpf_perf_event_output() perf data: Explicitly set byte order for integer types perf record: Use WARN_ONCE to replace 'if' condition perf record: Extract synthesize code to record__synthesize() perf record: Introduce record__finish_output() to finish a perf.data perf record: Ensure return non-zero rc when mmap fail kernel/trace/trace_syscalls.c | 16 +- tools/build/Makefile.build | 2 +- tools/lib/traceevent/event-parse.c | 146 ++++++++++++++---- tools/lib/traceevent/event-parse.h | 13 ++ tools/perf/arch/x86/tests/rdpmc.c | 1 + tools/perf/builtin-record.c | 168 ++++++++++++--------- tools/perf/builtin-stat.c | 158 +++++++++++++++++-- tools/perf/builtin-trace.c | 8 +- tools/perf/util/data-convert-bt.c | 118 ++++++++++++++- tools/perf/util/pmu.c | 13 ++ .../util/scripting-engines/trace-event-python.c | 4 +- tools/perf/util/setup.py | 4 + tools/perf/util/sort.c | 37 +++-- tools/perf/util/stat-shadow.c | 18 ++- tools/perf/util/stat.h | 1 + tools/power/x86/turbostat/turbostat.c | 8 +- 16 files changed, 566 insertions(+), 149 deletions(-)

