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

Side by Side Diff: tools/perf/metrics/speedindex.py

Issue 809393002: Added support for improvement_direction to relevant values, which is propogated to chartjson. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years 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
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 collections 5 import collections
6 6
7 from metrics import Metric 7 from metrics import Metric
8 from telemetry.core import bitmap 8 from telemetry.core import bitmap
9 from telemetry.value import scalar 9 from telemetry.value import scalar
10 10
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 'smaller than the load time. On the other hand, If the ' 62 'smaller than the load time. On the other hand, If the '
63 'contents are composed by many XHR requests with small ' 63 'contents are composed by many XHR requests with small '
64 'main resource and javascript, speed index will be able to ' 64 'main resource and javascript, speed index will be able to '
65 'get the features of performance more accurately than load ' 65 'get the features of performance more accurately than load '
66 'time because the load time will measure the time when ' 66 'time because the load time will measure the time when '
67 'static resources are loaded. If you want to get more ' 67 'static resources are loaded. If you want to get more '
68 'detail, please refer to http://goo.gl/Rw3d5d. Currently ' 68 'detail, please refer to http://goo.gl/Rw3d5d. Currently '
69 'there are two implementations: for Android and for ' 69 'there are two implementations: for Android and for '
70 'Desktop. The Android version uses video capture; the ' 70 'Desktop. The Android version uses video capture; the '
71 'Desktop one uses paint events and has extra overhead to ' 71 'Desktop one uses paint events and has extra overhead to '
72 'catch paint events.')) 72 'catch paint events.',
73 higher_is_better=False))
73 74
74 def IsFinished(self, tab): 75 def IsFinished(self, tab):
75 """Decide whether the timeline recording should be stopped. 76 """Decide whether the timeline recording should be stopped.
76 77
77 When the timeline recording is stopped determines which paint events 78 When the timeline recording is stopped determines which paint events
78 are used in the speed index metric calculation. In general, the recording 79 are used in the speed index metric calculation. In general, the recording
79 should continue if there has just been some data received, because 80 should continue if there has just been some data received, because
80 this suggests that painting may continue. 81 this suggests that painting may continue.
81 82
82 A page may repeatedly request resources in an infinite loop; a timeout 83 A page may repeatedly request resources in an infinite loop; a timeout
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after
314 frame = paint_event.args['frameId'] 315 frame = paint_event.args['frameId']
315 return (frame,) + GetBox(paint_event.args['data']['clip']) 316 return (frame,) + GetBox(paint_event.args['data']['clip'])
316 317
317 def _GroupEventByRectangle(self, paint_events): 318 def _GroupEventByRectangle(self, paint_events):
318 """Group all paint events according to the rectangle that they update.""" 319 """Group all paint events according to the rectangle that they update."""
319 result = collections.defaultdict(list) 320 result = collections.defaultdict(list)
320 for event in paint_events: 321 for event in paint_events:
321 assert event.name == 'Paint' 322 assert event.name == 'Paint'
322 result[self._GetRectangle(event)].append(event) 323 result[self._GetRectangle(event)].append(event)
323 return result 324 return result
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698