Index: tools/telemetry/telemetry/web_perf/metrics/fast_metric.py |
diff --git a/tools/telemetry/telemetry/web_perf/metrics/fast_metric.py b/tools/telemetry/telemetry/web_perf/metrics/fast_metric.py |
deleted file mode 100644 |
index 88b198918d969cc5f09a2e57c20c8f20f7b3816e..0000000000000000000000000000000000000000 |
--- a/tools/telemetry/telemetry/web_perf/metrics/fast_metric.py |
+++ /dev/null |
@@ -1,101 +0,0 @@ |
-# Copyright 2014 The Chromium Authors. All rights reserved. |
-# Use of this source code is governed by a BSD-style license that can be |
-# found in the LICENSE file. |
- |
-import logging |
- |
-from telemetry.timeline import bounds |
-from telemetry.value import scalar |
-from telemetry.web_perf import timeline_interaction_record as tir_module |
-from telemetry.web_perf.metrics import timeline_based_metric |
-from telemetry.web_perf.metrics import v8_stats as v8_stats_module |
- |
- |
-class FastMetric(timeline_based_metric.TimelineBasedMetric): |
- def __init__(self): |
- super(FastMetric, self).__init__() |
- |
- def AddResults(self, model, renderer_thread, interaction_records, results): |
- """Add 11 results: duration, cpu_time, and idle_time, |
- incremental_marking, incremental_marking_outside_idle, |
- scavenger, scavenger_outside_idle, |
- mark_compactor, mark_compactor_outside_idle, |
- total_garbage_collection, |
- total_garbage_collection_outside_idle |
- |
- duration is the total wall time for |interaction_records|. |
- cpu_time is the renderer thread time that intersects |interaction_records|. |
- idle time is wall time for |interaction_records| for which renderer slices |
- do not overlap. Note that unscheduled renderer thread time is not |
- counted. Idle time is time for which there was nothing to do. |
- incremental_marking is the total thread duration spent in incremental |
- marking steps. |
- incremental_marking_outside_idle is the thread duration spent in incremental |
- marking steps outside of idle notifications. |
- scavenger is the total thread duration spent in scavenges. |
- scavenger_outside_idle is the thread duration spent in scavenges outside of |
- idle notifications. |
- mark_compactor is the total thread duration spent in mark-sweep-compactor. |
- mark_compactor_outside_idle is the thread duration spent in |
- mark-sweep-compactor outside of idle notifications. |
- total_garbage_collection is the total thread duration spend in garbage |
- collection |
- total_garbage_collection_outside_idle is the total thread duration spend in |
- garbage collection outside of idle notification. |
- |
- Args: |
- model: a TimelineModule instance |
- renderer_thread: a telemetry.timeline.thread.Thread() instance |
- interaction_records: an iterable of TimelineInteractionRecord instances |
- results: an instance of page.PageTestResults |
- """ |
- self.VerifyNonOverlappedRecords(interaction_records) |
- |
- duration = sum(r.end - r.start for r in interaction_records) |
- results.AddValue(scalar.ScalarValue( |
- results.current_page, 'fast-duration', 'ms', duration)) |
- |
- try: |
- cpu_time = sum( |
- r.GetOverlappedThreadTimeForSlice(s) |
- for r in interaction_records |
- for s in renderer_thread.toplevel_slices) |
- except tir_module.NoThreadTimeDataException: |
- logging.warning( |
- 'Main thread cpu_time cannot be computed for records %s since ' |
- 'trace does not contain thread time data.', |
- repr(interaction_records)) |
- else: |
- results.AddValue(scalar.ScalarValue( |
- results.current_page, 'fast-cpu_time', 'ms', cpu_time)) |
- |
- idle_time = duration - sum( |
- bounds.Bounds.GetOverlap(r.start, r.end, s.start, s.end) |
- for r in interaction_records |
- for s in renderer_thread.toplevel_slices) |
- results.AddValue(scalar.ScalarValue( |
- results.current_page, 'fast-idle_time', 'ms', idle_time)) |
- |
- v8_stats = v8_stats_module.V8Stats(renderer_thread, interaction_records) |
- |
- for event_stats in v8_stats.all_event_stats: |
- results.AddValue(scalar.ScalarValue( |
- results.current_page, 'fast-' + event_stats.result_name, 'ms', |
- event_stats.thread_duration, |
- event_stats.result_description)) |
- results.AddValue(scalar.ScalarValue( |
- results.current_page, |
- 'fast-' + event_stats.result_name + '_outside_idle', 'ms', |
- event_stats.thread_duration_outside_idle, |
- event_stats.result_description + 'outside of idle notifications')) |
- |
- results.AddValue(scalar.ScalarValue( |
- results.current_page, 'fast-total_garbage_collection', 'ms', |
- v8_stats.total_gc_thread_duration, |
- 'Total thread duration of all garbage collection events')) |
- |
- results.AddValue(scalar.ScalarValue( |
- results.current_page, 'fast-total_garbage_collection_outside_idle', |
- 'ms', v8_stats.total_gc_thread_duration_outside_idle, |
- 'Total thread duration of all garbage collection events outside of idle' |
- 'notifications')) |