Index: tools/chrome_remote_control/chrome_remote_control/multi_page_benchmark.py |
diff --git a/tools/chrome_remote_control/chrome_remote_control/multi_page_benchmark.py b/tools/chrome_remote_control/chrome_remote_control/multi_page_benchmark.py |
index 052fdb7a88162fb0d1b9890d0c566444a75b65e9..931bb2615984025f1b12feed5fbc4c1bbe1c15a8 100644 |
--- a/tools/chrome_remote_control/chrome_remote_control/multi_page_benchmark.py |
+++ b/tools/chrome_remote_control/chrome_remote_control/multi_page_benchmark.py |
@@ -31,6 +31,7 @@ class BenchmarkResults(page_test.PageTestResults): |
self._page = None |
self._page_values = {} |
+ self.histograms = defaultdict(list) |
tonyg
2012/10/30 15:52:59
Did you consider adding a self.field_types for 'hi
marja
2012/10/30 17:19:01
Done.
marja
2012/10/30 17:20:22
Oops, csv value writer is not yet outputting the a
marja
2012/10/30 17:30:21
Now that part is done, too.
|
def WillMeasurePage(self, page): |
self._page = page |
@@ -46,6 +47,10 @@ results! You must return the same dict keys every time.""" |
self.field_units[name] = units |
self._page_values[name] = value |
+ def AddHistogram(self, name, units, data): |
+ assert name != 'url', 'The name url cannot be used' |
+ self.histograms[(name, units)] = data |
+ |
def DidMeasurePage(self): |
assert self._page, 'Failed to call WillMeasurePage' |
@@ -59,6 +64,16 @@ results! You must return the same dict keys every time.""" |
value = self._page_values[name] |
self.results_summary[(name, units)].append(value) |
+ def PrintSummary(self, trace_tag): |
+ for measurement_units, values in self.results_summary.iteritems(): |
+ measurement, units = measurement_units |
+ trace = measurement + (trace_tag or '') |
+ PrintPerfResult(measurement, trace, values, units) |
+ for measurement_units, data in self.histograms.iteritems(): |
+ measurement, units = measurement_units |
+ trace = measurement + (trace_tag or '') |
+ PrintPerfResult(measurement, trace, data, units, 'histogram') |
+ |
class CsvBenchmarkResults(BenchmarkResults): |
def __init__(self, results_writer): |
@@ -82,12 +97,6 @@ class CsvBenchmarkResults(BenchmarkResults): |
row.append(value) |
self._results_writer.writerow(row) |
- def PrintSummary(self, trace_tag): |
- for measurement_units, values in self.results_summary.iteritems(): |
- measurement, units = measurement_units |
- trace = measurement + (trace_tag or '') |
- PrintPerfResult(measurement, trace, values, units) |
- |
# TODO(nduca): Rename to page_benchmark |
class MultiPageBenchmark(page_test.PageTest): |