OLD | NEW |
(Empty) | |
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. |
| 4 import os |
| 5 |
| 6 |
| 7 from core import perf_benchmark |
| 8 |
| 9 from telemetry.timeline import tracing_category_filter |
| 10 from telemetry.value import scalar |
| 11 from telemetry.value import failure |
| 12 from telemetry.web_perf import trace_mappers_based_measurement |
| 13 |
| 14 import page_sets |
| 15 |
| 16 class RailMapperHandler(trace_mappers_based_measurement.TraceMapperHandler): |
| 17 _weather_report_map_func_dir = os.path.join( |
| 18 os.path.dirname(__file__), '..', '..', '..', 'third_party', |
| 19 'catapult', 'perf_insights', 'perf_insights', 'mappers', |
| 20 'weather_report_map_function.html') |
| 21 def __init__(self): |
| 22 super(RailMapperHandler, self).__init__( |
| 23 trace_mapper_path=self._weather_report_map_func_dir) |
| 24 |
| 25 def AddResults(self, pi_results, page, results): |
| 26 wr_value = pi_results.FindValueNamed('wr') |
| 27 try: |
| 28 rail_score = wr_value['irTree']['overallScore'] |
| 29 results.AddValue( |
| 30 scalar.ScalarValue( |
| 31 page=results.current_page, name='RailScore', units='percent', |
| 32 value=rail_score, important=True, description='RAIL score.')) |
| 33 except Exception: |
| 34 results.AddValue( |
| 35 failure.FromMessage( |
| 36 page=page, message='Failed to compute RAIL score.')) |
| 37 |
| 38 |
| 39 class RailTop25Sites(perf_benchmark.PerfBenchmark): |
| 40 """Measures GPU timeline metric for the top 25 sites.""" |
| 41 page_set = page_sets.Top25SmoothPageSet |
| 42 test = trace_mappers_based_measurement.TraceMapperBasedMeasurement |
| 43 |
| 44 def CreateTimelineBasedMeasurementOptions(self): |
| 45 options = trace_mappers_based_measurement.Options( |
| 46 tracing_category_filter.CreateDebugOverheadFilter()) |
| 47 options.AddTraceMapperHandlers(RailMapperHandler()) |
| 48 return options |
| 49 |
| 50 @classmethod |
| 51 def Name(cls): |
| 52 return 'rail.top_25_smooth' |
OLD | NEW |