aboutsummaryrefslogtreecommitdiff
path: root/crosperf/schedv2.py
diff options
context:
space:
mode:
authorDenis Nikitin <denik@google.com>2019-10-10 22:31:23 -0700
committerDenis Nikitin <denik@chromium.org>2019-10-16 05:29:14 +0000
commitf94608f33f26b8502fd7c26d0df1e71295d75510 (patch)
treec6247e2fdd306a5408ea2e1897421f81075ea106 /crosperf/schedv2.py
parentbf7ee87429d2c9730349ebc22f904b5a3fac7107 (diff)
downloadtoolchain-utils-f94608f33f26b8502fd7c26d0df1e71295d75510.tar.gz
crosperf: Update top stats and cooldown report
Redirect top statistics from benchmark runs into a separate file topstats.log under results_dir directory. Fix "highest 5" usages to show highest usages of a command (instead of a process) per snapshot. Improve mechanism of calculation chrome high CPU load when benchmark is running. Add Cooldown wait time into email report. Fix minor cros lint warnings to unblock repo upload. BUG=chromium:966514 TEST=unittests and HW tests on eve passed. Change-Id: I3999efd554cb5a3b27a2ce3fddb2f20714b434fd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1856818 Tested-by: Denis Nikitin <denik@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
Diffstat (limited to 'crosperf/schedv2.py')
-rw-r--r--crosperf/schedv2.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/crosperf/schedv2.py b/crosperf/schedv2.py
index 0cc8f746..768d29d8 100644
--- a/crosperf/schedv2.py
+++ b/crosperf/schedv2.py
@@ -243,10 +243,14 @@ class DutWorker(Thread):
if self._kerncmd_update_needed(intel_pstate):
self._update_kerncmd_intel_pstate(intel_pstate)
+ # When calculating cooldown wait time we assume that suite_runner is
+ # never reused so we can sum up the values across all benchmark_runs.
+ # If implementation changes causing the assert below to fail the
+ # calculation should be adjusted accordingly.
+ assert br.suite_runner.GetCooldownWaitTime() == 0
# Execute the br.
self._execute_benchmark_run(br)
total_waittime += br.suite_runner.GetCooldownWaitTime()
- br.suite_runner.ResetCooldownWaitTime()
finally:
self._logger.LogOutput(
'Total wait time for cooldown: %d min' % (total_waittime // 60))