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

Side by Side Diff: tools/perf/benchmarks/speedometer.py

Issue 2744723003: Adding owners to benchmark tests (Closed)
Patch Set: rebasing Created 3 years, 9 months 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 unified diff | Download patch
« no previous file with comments | « tools/perf/benchmarks/spaceport.py ('k') | tools/perf/benchmarks/start_with_url.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 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 """Apple's Speedometer performance benchmark. 5 """Apple's Speedometer performance benchmark.
6 6
7 Speedometer measures simulated user interactions in web applications. 7 Speedometer measures simulated user interactions in web applications.
8 8
9 The current benchmark uses TodoMVC to simulate user actions for adding, 9 The current benchmark uses TodoMVC to simulate user actions for adding,
10 completing, and removing to-do items. Speedometer repeats the same actions using 10 completing, and removing to-do items. Speedometer repeats the same actions using
11 DOM APIs - a core set of web platform APIs used extensively in web applications- 11 DOM APIs - a core set of web platform APIs used extensively in web applications-
12 as well as six popular JavaScript frameworks: Ember.js, Backbone.js, jQuery, 12 as well as six popular JavaScript frameworks: Ember.js, Backbone.js, jQuery,
13 AngularJS, React, and Flight. Many of these frameworks are used on the most 13 AngularJS, React, and Flight. Many of these frameworks are used on the most
14 popular websites in the world, such as Facebook and Twitter. The performance of 14 popular websites in the world, such as Facebook and Twitter. The performance of
15 these types of operations depends on the speed of the DOM APIs, the JavaScript 15 these types of operations depends on the speed of the DOM APIs, the JavaScript
16 engine, CSS style resolution, layout, and other technologies. 16 engine, CSS style resolution, layout, and other technologies.
17 """ 17 """
18 18
19 import os 19 import os
20 20
21 from core import perf_benchmark 21 from core import perf_benchmark
22 22
23 from benchmarks import v8_helper 23 from benchmarks import v8_helper
24 24
25 from telemetry import benchmark
25 from telemetry import page as page_module 26 from telemetry import page as page_module
26 from telemetry.page import legacy_page_test 27 from telemetry.page import legacy_page_test
27 from telemetry import story 28 from telemetry import story
28 from telemetry.value import list_of_scalar_values 29 from telemetry.value import list_of_scalar_values
29 30
30 from metrics import keychain_metric 31 from metrics import keychain_metric
31 32
32 33
33 class SpeedometerMeasurement(legacy_page_test.LegacyPageTest): 34 class SpeedometerMeasurement(legacy_page_test.LegacyPageTest):
34 enabled_suites = [ 35 enabled_suites = [
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 for(var i = 0; i < benchmarkClient.iterationCount; i++) { 84 for(var i = 0; i < benchmarkClient.iterationCount; i++) {
84 suite_times.push( 85 suite_times.push(
85 benchmarkClient._measuredValues[i].tests[{{ key }}].total); 86 benchmarkClient._measuredValues[i].tests[{{ key }}].total);
86 }; 87 };
87 suite_times; 88 suite_times;
88 """, 89 """,
89 key=suite_name), important=False)) 90 key=suite_name), important=False))
90 keychain_metric.KeychainMetric().AddResults(tab, results) 91 keychain_metric.KeychainMetric().AddResults(tab, results)
91 92
92 93
94 @benchmark.Owner(emails=['bmeurer@chromium.org', 'mvstanton@chromium.org'])
93 class Speedometer(perf_benchmark.PerfBenchmark): 95 class Speedometer(perf_benchmark.PerfBenchmark):
94 test = SpeedometerMeasurement 96 test = SpeedometerMeasurement
95 97
96 @classmethod 98 @classmethod
97 def Name(cls): 99 def Name(cls):
98 return 'speedometer' 100 return 'speedometer'
99 101
100 def CreateStorySet(self, options): 102 def CreateStorySet(self, options):
101 ps = story.StorySet( 103 ps = story.StorySet(
102 base_dir=os.path.dirname(os.path.abspath(__file__)), 104 base_dir=os.path.dirname(os.path.abspath(__file__)),
103 archive_data_file='../page_sets/data/speedometer.json', 105 archive_data_file='../page_sets/data/speedometer.json',
104 cloud_storage_bucket=story.PUBLIC_BUCKET) 106 cloud_storage_bucket=story.PUBLIC_BUCKET)
105 ps.AddStory(page_module.Page( 107 ps.AddStory(page_module.Page(
106 'http://browserbench.org/Speedometer/', ps, ps.base_dir, 108 'http://browserbench.org/Speedometer/', ps, ps.base_dir,
107 make_javascript_deterministic=False)) 109 make_javascript_deterministic=False))
108 return ps 110 return ps
109 111
110 112
113 @benchmark.Owner(emails=['hablich@chromium.org'])
111 class SpeedometerTurbo(Speedometer): 114 class SpeedometerTurbo(Speedometer):
112 def SetExtraBrowserOptions(self, options): 115 def SetExtraBrowserOptions(self, options):
113 super(SpeedometerTurbo, self).SetExtraBrowserOptions(options) 116 super(SpeedometerTurbo, self).SetExtraBrowserOptions(options)
114 v8_helper.EnableTurbo(options) 117 v8_helper.EnableTurbo(options)
115 118
116 @classmethod 119 @classmethod
117 def Name(cls): 120 def Name(cls):
118 return 'speedometer-turbo' 121 return 'speedometer-turbo'
OLDNEW
« no previous file with comments | « tools/perf/benchmarks/spaceport.py ('k') | tools/perf/benchmarks/start_with_url.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698