Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Unified Diff: tools/perf/benchmarks/dummy_benchmark.py

Issue 1410683014: [tools/perf] Add dummy benchmark that produces Gaussian value with a known mean and std (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | tools/perf/page_sets/dummy_page.html » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/perf/benchmarks/dummy_benchmark.py
diff --git a/tools/perf/benchmarks/dummy_benchmark.py b/tools/perf/benchmarks/dummy_benchmark.py
new file mode 100644
index 0000000000000000000000000000000000000000..2011be2fb6e40633c7b0ee3e5c8bb6c6161ed98b
--- /dev/null
+++ b/tools/perf/benchmarks/dummy_benchmark.py
@@ -0,0 +1,58 @@
+# Copyright 2015 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+"""
+Benchmarks in this file is created for the purpose of testing telemetry
+integration with perf dashboard and bisect bot. The number they produce aren't
+meant to represent any actual performance data of the browser.
+"""
+
+import random
+
+from core import perf_benchmark
+
+from telemetry.value import scalar
+from telemetry.page import page_test
+
+import page_sets
+
+
+class _DummyTest(page_test.PageTest):
+ def __init__(self, avg, std):
+ super(_DummyTest, self).__init__()
+ self._avg = avg
+ self._std = std
+
+ def ValidateAndMeasurePage(self, page, tab, results):
+ results.AddValue(scalar.ScalarValue(
+ page=page,
+ name='gaussian-value', units='ms',
+ value=random.gauss(self._avg, self._std),
+ description=('Random number that follows the Gaussian distribution '
+ 'with mean=%s and std=%s' % (self._avg, self._std))))
+
+
+class _DummyBenchmark(perf_benchmark.PerfBenchmark):
+ page_set = page_sets.DummyStorySet
+
+
+class DummyBenchmarkOne(_DummyBenchmark):
+ """ A low noise benchmark with mean=100 & std=1. """
+
+ def CreatePageTest(self, options):
+ return _DummyTest(100, 1)
+
+ @classmethod
+ def Name(cls):
+ return 'dummy_benchmark.stable_benchmark_1'
+
+
+class DummyBenchmarkTwo(_DummyBenchmark):
+ """ A noisy benchmark with mean=50 & std=20. """
+
+ def CreatePageTest(self, options):
+ return _DummyTest(50, 20)
+
+ @classmethod
+ def Name(cls):
+ return 'dummy_benchmark.noisy_benchmark_1'
« no previous file with comments | « no previous file | tools/perf/page_sets/dummy_page.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698