aboutsummaryrefslogtreecommitdiffstats
path: root/.get_maintainer.ignore
diff options
context:
space:
mode:
authorJiri Olsa <jolsa@kernel.org>2017-08-03 13:21:14 +0200
committerArnaldo Carvalho de Melo <acme@redhat.com>2017-11-17 12:16:04 -0300
commit93d10af26bb7159349158b721ba2e258291d53c3 (patch)
treee476300cb6e6f32e23e79c453bf259b036829cd3 /.get_maintainer.ignore
parentperf ordered_events: Pass timestamp arg in perf_session__queue_event (diff)
downloadlinux-dev-93d10af26bb7159349158b721ba2e258291d53c3.tar.xz
linux-dev-93d10af26bb7159349158b721ba2e258291d53c3.zip
perf tools: Optimize sample parsing for ordered events
Currently when using ordered events we parse the sample twice (the perf_evlist__parse_sample function). Once before we queue the sample for sorting: perf_session__process_event perf_evlist__parse_sample(sample) perf_session__queue_event(sample.time) And then when we deliver the sorted sample: ordered_events__deliver_event perf_evlist__parse_sample perf_session__deliver_event We can skip the initial full sample parsing by using perf_evlist__parse_sample_timestamp function, which got introduced earlier. The new path looks like: perf_session__process_event perf_evlist__parse_sample_timestamp perf_session__queue_event ordered_events__deliver_event perf_session__deliver_event perf_evlist__parse_sample It saves some instructions and is slightly faster: Before: Performance counter stats for './perf.old report --stdio' (5 runs): 64,396,007,225 cycles:u ( +- 0.97% ) 105,882,112,735 instructions:u # 1.64 insn per cycle ( +- 0.00% ) 21.618103465 seconds time elapsed ( +- 1.12% ) After: Performance counter stats for './perf report --stdio' (5 runs): 60,567,807,182 cycles:u ( +- 0.40% ) 104,853,333,514 instructions:u # 1.73 insn per cycle ( +- 0.00% ) 20.168895243 seconds time elapsed ( +- 0.32% ) Signed-off-by: Jiri Olsa <jolsa@kernel.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Wang Nan <wangnan0@huawei.com> Link: http://lkml.kernel.org/n/tip-cjp2tuk0qkjs9dxzlpmm34ua@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to '.get_maintainer.ignore')
0 files changed, 0 insertions, 0 deletions