Hello Kudu Jenkins, Andrew Wong, Grant Henke, Bankim Bhavsar,

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/16284

to look at the new patch set (#4).

Change subject: [benchmarks] added a few 'perf stat' metrics
......................................................................

[benchmarks] added a few 'perf stat' metrics

Added an ability to run most of the micro-benchmarks under 'perf stat'
and record the following counters:
  * instructions per cycle
  * CPU utilization
  * branch misses

These performance monitoring counters are relatively stable in terms of
'run to run' with the same binary at the same machine (under 5% pct
deviation).  They provide an extra coverage in addition to
the application-specific metrics directly output by the tests.  The
introduced PMCs shows how effective the code is in using available
hardware resource (e.g., see [1] and [2] for information on the
instructions-per-cycle performance counter).

It seems these new performance metrics cannot be used for release-gating
decisions, but they are useful in tracking improvements and regressions
in the code, especially when updating common sub-components like
third-party libraries, etc.

For each of the mentioned performance counters, a graph is generated
with data points for all the tests run under 'perf stat'.

As of now, the following existing tests are not run under `perf stat`
and corresponding TODOs are added:
  * tests based on external test mini-cluster (need to track performance
    of spawn kudu-tserver and kudu-master processes, but that's not
    available yet, need to implement that)
  * full_stack-insert-scan-test (custom-tailored --perf_stat_scan
    provision are not working for some reason, need fix that)

To disable the collection of these performance counters, set
RUN_PERF_STAT to 0 (it's set to 1 by default).

[1] http://www.brendangregg.com/blog/2017-05-09/cpu-utilization-is-wrong.html
[2] http://www.brendangregg.com/blog/2017-05-04/the-pmcs-of-ec2.html

Change-Id: Ib742ffbaabca96c2ac455481313348da2133ff6e
---
M src/kudu/scripts/benchmarks.sh
1 file changed, 241 insertions(+), 121 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/84/16284/4
--
To view, visit http://gerrit.cloudera.org:8080/16284
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Ib742ffbaabca96c2ac455481313348da2133ff6e
Gerrit-Change-Number: 16284
Gerrit-PatchSet: 4
Gerrit-Owner: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Andrew Wong <[email protected]>
Gerrit-Reviewer: Bankim Bhavsar <[email protected]>
Gerrit-Reviewer: Grant Henke <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)

Reply via email to