summaryrefslogtreecommitdiffstats
path: root/tools/perf/benchmarks/jitter.py
blob: 93ec476bc1e5774930bcc1c85bbc3a413029a670 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Copyright 2015 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.

from core import perf_benchmark

from telemetry.timeline import tracing_category_filter
from telemetry.web_perf import timeline_based_measurement
from telemetry.web_perf.metrics import jitter_timeline

import page_sets


JITTER_CATEGORY = 'cdp.perf'
TIMELINE_REQUIRED_CATEGORY = 'blink.console'


class Jitter(perf_benchmark.PerfBenchmark):
  """Timeline based measurement benchmark for jitter."""

  page_set = page_sets.JitterPageSet

  def CreateTimelineBasedMeasurementOptions(self):
    cat_filter = tracing_category_filter.CreateMinimalOverheadFilter()
    cat_filter.AddIncludedCategory(JITTER_CATEGORY)
    cat_filter.AddIncludedCategory(TIMELINE_REQUIRED_CATEGORY)
    options = timeline_based_measurement.Options(
        overhead_level=cat_filter)
    options.SetLegacyTimelineBasedMetrics(
        [jitter_timeline.JitterTimelineMetric()])
    return options

  @classmethod
  def Name(cls):
    return 'jitter'