| OLD | NEW |
| 1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 import math | 5 import math |
| 6 import os | 6 import os |
| 7 | 7 |
| 8 from metrics import power | 8 from metrics import power |
| 9 from telemetry import benchmark | 9 from telemetry import benchmark |
| 10 from telemetry.page import page_measurement | 10 from telemetry.page import page_measurement |
| 11 from telemetry.page import page_set | 11 from telemetry.page import page_set |
| 12 from telemetry.value import scalar |
| 12 | 13 |
| 13 | 14 |
| 14 class _DromaeoMeasurement(page_measurement.PageMeasurement): | 15 class _DromaeoMeasurement(page_measurement.PageMeasurement): |
| 15 def __init__(self): | 16 def __init__(self): |
| 16 super(_DromaeoMeasurement, self).__init__() | 17 super(_DromaeoMeasurement, self).__init__() |
| 17 self._power_metric = None | 18 self._power_metric = None |
| 18 | 19 |
| 19 def CustomizeBrowserOptions(self, options): | 20 def CustomizeBrowserOptions(self, options): |
| 20 power.PowerMetric.CustomizeBrowserOptions(options) | 21 power.PowerMetric.CustomizeBrowserOptions(options) |
| 21 | 22 |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 64 return k | 65 return k |
| 65 | 66 |
| 66 def AggregateData(container, key, value): | 67 def AggregateData(container, key, value): |
| 67 if key not in container: | 68 if key not in container: |
| 68 container[key] = {'count': 0, 'sum': 0} | 69 container[key] = {'count': 0, 'sum': 0} |
| 69 container[key]['count'] += 1 | 70 container[key]['count'] += 1 |
| 70 container[key]['sum'] += math.log(value) | 71 container[key]['sum'] += math.log(value) |
| 71 | 72 |
| 72 suffix = page.url[page.url.index('?') + 1 :] | 73 suffix = page.url[page.url.index('?') + 1 :] |
| 73 def AddResult(name, value): | 74 def AddResult(name, value): |
| 74 data_type = 'unimportant' | 75 important = False |
| 75 if name == suffix: | 76 if name == suffix: |
| 76 data_type = 'default' | 77 important = True |
| 77 | 78 results.AddValue(scalar.ScalarValue( |
| 78 results.Add(Escape(name), 'runs/s', value, data_type=data_type) | 79 results.current_page, Escape(name), 'runs/s', value, important)) |
| 79 | 80 |
| 80 aggregated = {} | 81 aggregated = {} |
| 81 for data in score: | 82 for data in score: |
| 82 AddResult('%s/%s' % (data['collection'], data['name']), | 83 AddResult('%s/%s' % (data['collection'], data['name']), |
| 83 data['mean']) | 84 data['mean']) |
| 84 | 85 |
| 85 top_name = data['collection'].split('-', 1)[0] | 86 top_name = data['collection'].split('-', 1)[0] |
| 86 AggregateData(aggregated, top_name, data['mean']) | 87 AggregateData(aggregated, top_name, data['mean']) |
| 87 | 88 |
| 88 collection_name = data['collection'] | 89 collection_name = data['collection'] |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 195 """Dromaeo JSLib traverse prototype JavaScript benchmark""" | 196 """Dromaeo JSLib traverse prototype JavaScript benchmark""" |
| 196 tag = 'jslibtraverseprototype' | 197 tag = 'jslibtraverseprototype' |
| 197 query_param = 'jslib-traverse-prototype' | 198 query_param = 'jslib-traverse-prototype' |
| 198 | 199 |
| 199 | 200 |
| 200 class DromaeoCSSQueryJquery(_DromaeoBenchmark): | 201 class DromaeoCSSQueryJquery(_DromaeoBenchmark): |
| 201 """Dromaeo CSS Query jquery JavaScript benchmark""" | 202 """Dromaeo CSS Query jquery JavaScript benchmark""" |
| 202 tag = 'cssqueryjquery' | 203 tag = 'cssqueryjquery' |
| 203 query_param = 'cssquery-jquery' | 204 query_param = 'cssquery-jquery' |
| 204 | 205 |
| OLD | NEW |