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

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

Issue 566773003: [telemetry] Split blink_perf up on Android. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix skipped file. Created 6 years, 3 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 | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 os 5 import os
6 6
7 from telemetry import benchmark 7 from telemetry import benchmark
8 from telemetry.core import util 8 from telemetry.core import util
9 from telemetry.page import page_set 9 from telemetry.page import page_set
10 from telemetry.page import page_test 10 from telemetry.page import page_test
11 from telemetry.value import list_of_scalar_values 11 from telemetry.value import list_of_scalar_values
12 12
13 13
14 def _CreatePageSetFromPath(path): 14 BLINK_PERF_BASE_DIR = os.path.join(util.GetChromiumSrcDir(),
15 'third_party', 'WebKit', 'PerformanceTests')
16 SKIPPED_FILE = os.path.join(BLINK_PERF_BASE_DIR, 'Skipped')
17
18
19 def _CreatePageSetFromPath(path, skipped_file):
15 assert os.path.exists(path) 20 assert os.path.exists(path)
16 21
17 page_urls = [] 22 page_urls = []
18 serving_dirs = set() 23 serving_dirs = set()
19 24
20 def _AddPage(path): 25 def _AddPage(path):
21 if not path.endswith('.html'): 26 if not path.endswith('.html'):
22 return 27 return
23 if '../' in open(path, 'r').read(): 28 if '../' in open(path, 'r').read():
24 # If the page looks like it references its parent dir, include it. 29 # If the page looks like it references its parent dir, include it.
25 serving_dirs.add(os.path.dirname(os.path.dirname(path))) 30 serving_dirs.add(os.path.dirname(os.path.dirname(path)))
26 page_urls.append('file://' + path.replace('\\', '/')) 31 page_urls.append('file://' + path.replace('\\', '/'))
27 32
28 def _AddDir(dir_path, skipped): 33 def _AddDir(dir_path, skipped):
29 for candidate_path in os.listdir(dir_path): 34 for candidate_path in os.listdir(dir_path):
30 if candidate_path == 'resources': 35 if candidate_path == 'resources':
31 continue 36 continue
32 candidate_path = os.path.join(dir_path, candidate_path) 37 candidate_path = os.path.join(dir_path, candidate_path)
33 if candidate_path.startswith(tuple([os.path.join(path, s) 38 if candidate_path.startswith(tuple([os.path.join(path, s)
34 for s in skipped])): 39 for s in skipped])):
35 continue 40 continue
36 if os.path.isdir(candidate_path): 41 if os.path.isdir(candidate_path):
37 _AddDir(candidate_path, skipped) 42 _AddDir(candidate_path, skipped)
38 else: 43 else:
39 _AddPage(candidate_path) 44 _AddPage(candidate_path)
40 45
41 if os.path.isdir(path): 46 if os.path.isdir(path):
42 skipped = [] 47 skipped = []
43 skipped_file = os.path.join(path, 'Skipped')
44 if os.path.exists(skipped_file): 48 if os.path.exists(skipped_file):
45 for line in open(skipped_file, 'r').readlines(): 49 for line in open(skipped_file, 'r').readlines():
46 line = line.strip() 50 line = line.strip()
47 if line and not line.startswith('#'): 51 if line and not line.startswith('#'):
48 skipped.append(line.replace('/', os.sep)) 52 skipped.append(line.replace('/', os.sep))
49 _AddDir(path, skipped) 53 _AddDir(path, skipped)
50 else: 54 else:
51 _AddPage(path) 55 _AddPage(path)
52 ps = page_set.PageSet(file_path=os.getcwd()+os.sep, serving_dirs=serving_dirs) 56 ps = page_set.PageSet(file_path=os.getcwd()+os.sep, serving_dirs=serving_dirs)
53 for url in page_urls: 57 for url in page_urls:
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 units = parts[-1] 90 units = parts[-1]
87 metric = page.display_name.split('.')[0].replace('/', '_') 91 metric = page.display_name.split('.')[0].replace('/', '_')
88 results.AddValue(list_of_scalar_values.ListOfScalarValues( 92 results.AddValue(list_of_scalar_values.ListOfScalarValues(
89 results.current_page, metric, units, values)) 93 results.current_page, metric, units, values))
90 94
91 break 95 break
92 96
93 print log 97 print log
94 98
95 99
100 # TODO(dtu): Remove this benchmark once desktop chromium.perf bots are on
101 # recipes and running the split-up blink_perf benchmark.
102 @benchmark.Disabled('android')
96 class BlinkPerfAll(benchmark.Benchmark): 103 class BlinkPerfAll(benchmark.Benchmark):
97 tag = 'all' 104 tag = 'all'
98 test = _BlinkPerfMeasurement 105 test = _BlinkPerfMeasurement
99 106
100 def CreatePageSet(self, options): 107 def CreatePageSet(self, options):
101 path = os.path.join(util.GetChromiumSrcDir(), 108 return _CreatePageSetFromPath(BLINK_PERF_BASE_DIR, SKIPPED_FILE)
102 'third_party', 'WebKit', 'PerformanceTests')
103 return _CreatePageSetFromPath(path)
104 109
105 110
106 @benchmark.Disabled 111 @benchmark.Enabled('android')
107 class BlinkPerfAnimation(benchmark.Benchmark): 112 class BlinkPerfAnimation(benchmark.Benchmark):
108 tag = 'animation' 113 tag = 'animation'
109 test = _BlinkPerfMeasurement 114 test = _BlinkPerfMeasurement
110 115
111 def CreatePageSet(self, options): 116 def CreatePageSet(self, options):
112 path = os.path.join(util.GetChromiumSrcDir(), 117 path = os.path.join(BLINK_PERF_BASE_DIR, 'Animation')
113 'third_party', 'WebKit', 'PerformanceTests', 'Animation') 118 return _CreatePageSetFromPath(path, SKIPPED_FILE)
114 return _CreatePageSetFromPath(path) 119
120
121 @benchmark.Enabled('android')
122 class BlinkPerfBindings(benchmark.Benchmark):
123 tag = 'bindings'
124 test = _BlinkPerfMeasurement
125
126 def CreatePageSet(self, options):
127 path = os.path.join(BLINK_PERF_BASE_DIR, 'Bindings')
128 return _CreatePageSetFromPath(path, SKIPPED_FILE)
129
130
131 @benchmark.Enabled('android')
132 class BlinkPerfCSS(benchmark.Benchmark):
133 tag = 'css'
134 test = _BlinkPerfMeasurement
135
136 def CreatePageSet(self, options):
137 path = os.path.join(BLINK_PERF_BASE_DIR, 'CSS')
138 return _CreatePageSetFromPath(path, SKIPPED_FILE)
139
140
141 @benchmark.Enabled('android')
142 class BlinkPerfCanvas(benchmark.Benchmark):
143 tag = 'canvas'
144 test = _BlinkPerfMeasurement
145
146 def CreatePageSet(self, options):
147 path = os.path.join(BLINK_PERF_BASE_DIR, 'Canvas')
148 return _CreatePageSetFromPath(path, SKIPPED_FILE)
149
150
151 @benchmark.Enabled('android')
152 class BlinkPerfDOM(benchmark.Benchmark):
153 tag = 'dom'
154 test = _BlinkPerfMeasurement
155
156 def CreatePageSet(self, options):
157 path = os.path.join(BLINK_PERF_BASE_DIR, 'DOM')
158 return _CreatePageSetFromPath(path, SKIPPED_FILE)
159
160
161 @benchmark.Enabled('android')
162 class BlinkPerfEvents(benchmark.Benchmark):
163 tag = 'events'
164 test = _BlinkPerfMeasurement
165
166 def CreatePageSet(self, options):
167 path = os.path.join(BLINK_PERF_BASE_DIR, 'Events')
168 return _CreatePageSetFromPath(path, SKIPPED_FILE)
169
170
171 @benchmark.Enabled('android')
172 class BlinkPerfInteractive(benchmark.Benchmark):
173 tag = 'interactive'
174 test = _BlinkPerfMeasurement
175
176 def CreatePageSet(self, options):
177 path = os.path.join(BLINK_PERF_BASE_DIR, 'Interactive')
178 return _CreatePageSetFromPath(path, SKIPPED_FILE)
179
180
181 @benchmark.Enabled('android')
182 class BlinkPerfLayout(benchmark.Benchmark):
183 tag = 'layout'
184 test = _BlinkPerfMeasurement
185
186 def CreatePageSet(self, options):
187 path = os.path.join(BLINK_PERF_BASE_DIR, 'Layout')
188 return _CreatePageSetFromPath(path, SKIPPED_FILE)
189
190
191 @benchmark.Enabled('android')
192 class BlinkPerfMutation(benchmark.Benchmark):
193 tag = 'mutation'
194 test = _BlinkPerfMeasurement
195
196 def CreatePageSet(self, options):
197 path = os.path.join(BLINK_PERF_BASE_DIR, 'Mutation')
198 return _CreatePageSetFromPath(path, SKIPPED_FILE)
199
200
201 @benchmark.Enabled('android')
202 class BlinkPerfParser(benchmark.Benchmark):
203 tag = 'parser'
204 test = _BlinkPerfMeasurement
205
206 def CreatePageSet(self, options):
207 path = os.path.join(BLINK_PERF_BASE_DIR, 'Parser')
208 return _CreatePageSetFromPath(path, SKIPPED_FILE)
209
210
211 @benchmark.Enabled('android')
212 class BlinkPerfSVG(benchmark.Benchmark):
213 tag = 'svg'
214 test = _BlinkPerfMeasurement
215
216 def CreatePageSet(self, options):
217 path = os.path.join(BLINK_PERF_BASE_DIR, 'SVG')
218 return _CreatePageSetFromPath(path, SKIPPED_FILE)
219
220
221 @benchmark.Enabled('android')
222 class BlinkPerfShadowDOM(benchmark.Benchmark):
223 tag = 'shadow_dom'
224 test = _BlinkPerfMeasurement
225
226 def CreatePageSet(self, options):
227 path = os.path.join(BLINK_PERF_BASE_DIR, 'ShadowDOM')
228 return _CreatePageSetFromPath(path, SKIPPED_FILE)
229
230
231 @benchmark.Enabled('android')
232 class BlinkPerfXMLHttpRequest(benchmark.Benchmark):
233 tag = 'xml_http_request'
234 test = _BlinkPerfMeasurement
235
236 def CreatePageSet(self, options):
237 path = os.path.join(BLINK_PERF_BASE_DIR, 'XMLHttpRequest')
238 return _CreatePageSetFromPath(path, SKIPPED_FILE)
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698