| 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 import os | 4 import os |
| 5 | 5 |
| 6 from telemetry.core import util | 6 from telemetry.core import util |
| 7 from telemetry.page import result_data_type |
| 7 | 8 |
| 8 class SmoothnessMetrics(object): | 9 class SmoothnessMetrics(object): |
| 9 def __init__(self, tab): | 10 def __init__(self, tab): |
| 10 self._tab = tab | 11 self._tab = tab |
| 11 with open( | 12 with open( |
| 12 os.path.join(os.path.dirname(__file__), | 13 os.path.join(os.path.dirname(__file__), |
| 13 'smoothness.js')) as f: | 14 'smoothness.js')) as f: |
| 14 js = f.read() | 15 js = f.read() |
| 15 tab.ExecuteJavaScript(js) | 16 tab.ExecuteJavaScript(js) |
| 16 | 17 |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 82 | 83 |
| 83 def CalcResults(benchmark_stats, results): | 84 def CalcResults(benchmark_stats, results): |
| 84 s = benchmark_stats | 85 s = benchmark_stats |
| 85 | 86 |
| 86 # Scroll Results | 87 # Scroll Results |
| 87 results.Add('mean_frame_time', 'ms', | 88 results.Add('mean_frame_time', 'ms', |
| 88 Average(s.total_time, s.screen_frame_count, 1000, 3)) | 89 Average(s.total_time, s.screen_frame_count, 1000, 3)) |
| 89 results.Add('dropped_percent', '%', | 90 results.Add('dropped_percent', '%', |
| 90 Average(s.dropped_frame_count, s.screen_frame_count, | 91 Average(s.dropped_frame_count, s.screen_frame_count, |
| 91 100, 1), | 92 100, 1), |
| 92 data_type='unimportant') | 93 data_type=result_data_type.UNIMPORTANT) |
| 93 results.Add('percent_impl_scrolled', '%', | 94 results.Add('percent_impl_scrolled', '%', |
| 94 Average(s.impl_thread_scroll_count, | 95 Average(s.impl_thread_scroll_count, |
| 95 s.impl_thread_scroll_count + | 96 s.impl_thread_scroll_count + |
| 96 s.main_thread_scroll_count, | 97 s.main_thread_scroll_count, |
| 97 100, 1), | 98 100, 1), |
| 98 data_type='unimportant') | 99 data_type=result_data_type.UNIMPORTANT) |
| 99 results.Add('average_num_layers_drawn', '', | 100 results.Add('average_num_layers_drawn', '', |
| 100 Average(s.drawn_layers_count, s.screen_frame_count, 1, 1), | 101 Average(s.drawn_layers_count, s.screen_frame_count, 1, 1), |
| 101 data_type='unimportant') | 102 data_type=result_data_type.UNIMPORTANT) |
| 102 results.Add('average_num_missing_tiles', '', | 103 results.Add('average_num_missing_tiles', '', |
| 103 Average(s.missing_tile_count, s.screen_frame_count, 1, 1), | 104 Average(s.missing_tile_count, s.screen_frame_count, 1, 1), |
| 104 data_type='unimportant') | 105 data_type=result_data_type.UNIMPORTANT) |
| 105 | 106 |
| 106 # Texture Upload Results | 107 # Texture Upload Results |
| 107 results.Add('average_commit_time', 'ms', | 108 results.Add('average_commit_time', 'ms', |
| 108 Average(s.commit_time, s.commit_count, 1000, 3), | 109 Average(s.commit_time, s.commit_count, 1000, 3), |
| 109 data_type='unimportant') | 110 data_type=result_data_type.UNIMPORTANT) |
| 110 results.Add('texture_upload_count', 'count', | 111 results.Add('texture_upload_count', 'count', |
| 111 s.texture_upload_count) | 112 s.texture_upload_count) |
| 112 results.Add('total_texture_upload_time', 'seconds', | 113 results.Add('total_texture_upload_time', 'seconds', |
| 113 s.texture_upload_time) | 114 s.texture_upload_time) |
| 114 | 115 |
| 115 # Image Decoding Results | 116 # Image Decoding Results |
| 116 results.Add('total_deferred_image_decode_count', 'count', | 117 results.Add('total_deferred_image_decode_count', 'count', |
| 117 s.deferred_image_decode_count, | 118 s.deferred_image_decode_count, |
| 118 data_type='unimportant') | 119 data_type=result_data_type.UNIMPORTANT) |
| 119 results.Add('total_image_cache_hit_count', 'count', | 120 results.Add('total_image_cache_hit_count', 'count', |
| 120 s.deferred_image_cache_hits, | 121 s.deferred_image_cache_hits, |
| 121 data_type='unimportant') | 122 data_type=result_data_type.UNIMPORTANT) |
| 122 results.Add('average_image_gathering_time', 'ms', | 123 results.Add('average_image_gathering_time', 'ms', |
| 123 Average(s.image_gathering_time, s.image_gathering_count, | 124 Average(s.image_gathering_time, s.image_gathering_count, |
| 124 1000, 3), | 125 1000, 3), |
| 125 data_type='unimportant') | 126 data_type=result_data_type.UNIMPORTANT) |
| 126 results.Add('total_deferred_image_decoding_time', 'seconds', | 127 results.Add('total_deferred_image_decoding_time', 'seconds', |
| 127 s.deferred_image_decode_time, | 128 s.deferred_image_decode_time, |
| 128 data_type='unimportant') | 129 data_type=result_data_type.UNIMPORTANT) |
| 129 | 130 |
| 130 # Tile Analysis Results | 131 # Tile Analysis Results |
| 131 results.Add('total_tiles_analyzed', 'count', | 132 results.Add('total_tiles_analyzed', 'count', |
| 132 s.tile_analysis_count, | 133 s.tile_analysis_count, |
| 133 data_type='unimportant') | 134 data_type=result_data_type.UNIMPORTANT) |
| 134 results.Add('solid_color_tiles_analyzed', 'count', | 135 results.Add('solid_color_tiles_analyzed', 'count', |
| 135 s.solid_color_tile_analysis_count, | 136 s.solid_color_tile_analysis_count, |
| 136 data_type='unimportant') | 137 data_type=result_data_type.UNIMPORTANT) |
| 137 results.Add('average_tile_analysis_time', 'ms', | 138 results.Add('average_tile_analysis_time', 'ms', |
| 138 Average(s.tile_analysis_time, s.tile_analysis_count, | 139 Average(s.tile_analysis_time, s.tile_analysis_count, |
| 139 1000, 3), | 140 1000, 3), |
| 140 data_type='unimportant') | 141 data_type=result_data_type.UNIMPORTANT) |
| 141 | 142 |
| 142 # Latency Results | 143 # Latency Results |
| 143 results.Add('average_latency', 'ms', | 144 results.Add('average_latency', 'ms', |
| 144 Average(s.input_event_latency, s.input_event_count, | 145 Average(s.input_event_latency, s.input_event_count, |
| 145 1000, 3), | 146 1000, 3), |
| 146 data_type='unimportant') | 147 data_type=result_data_type.UNIMPORTANT) |
| 147 results.Add('average_touch_ui_latency', 'ms', | 148 results.Add('average_touch_ui_latency', 'ms', |
| 148 Average(s.touch_ui_latency, s.touch_ui_count, 1000, 3), | 149 Average(s.touch_ui_latency, s.touch_ui_count, 1000, 3), |
| 149 data_type='unimportant') | 150 data_type=result_data_type.UNIMPORTANT) |
| 150 results.Add('average_touch_acked_latency', 'ms', | 151 results.Add('average_touch_acked_latency', 'ms', |
| 151 Average(s.touch_acked_latency, s.touch_acked_count, | 152 Average(s.touch_acked_latency, s.touch_acked_count, |
| 152 1000, 3), | 153 1000, 3), |
| 153 data_type='unimportant') | 154 data_type=result_data_type.UNIMPORTANT) |
| 154 results.Add('average_scroll_update_latency', 'ms', | 155 results.Add('average_scroll_update_latency', 'ms', |
| 155 Average(s.scroll_update_latency, s.scroll_update_count, | 156 Average(s.scroll_update_latency, s.scroll_update_count, |
| 156 1000, 3), | 157 1000, 3), |
| 157 data_type='unimportant') | 158 data_type=result_data_type.UNIMPORTANT) |
| OLD | NEW |