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

Unified Diff: tools/perf/benchmarks/oortonline.py

Issue 1424213006: Oort Online benchmark based on TBM. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | tools/perf/page_sets/oortonline.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/perf/benchmarks/oortonline.py
diff --git a/tools/perf/benchmarks/oortonline.py b/tools/perf/benchmarks/oortonline.py
index 216007f9a57ca3f9da65e615ade0224493e32908..f5c46a543b822d3df230c37306df70e63cb53f70 100644
--- a/tools/perf/benchmarks/oortonline.py
+++ b/tools/perf/benchmarks/oortonline.py
@@ -9,6 +9,12 @@ from telemetry import benchmark
from telemetry.page import page_test
from telemetry.value import scalar
from telemetry.value import improvement_direction
+from telemetry.timeline import tracing_category_filter
+from telemetry.web_perf import timeline_based_measurement
+from telemetry.web_perf.metrics import v8_gc_latency
+from telemetry.web_perf.metrics import smoothness
+from telemetry.web_perf.metrics import memory_timeline
+
class _OortOnlineMeasurement(page_test.PageTest):
def __init__(self):
@@ -38,3 +44,54 @@ class OortOnline(perf_benchmark.PerfBenchmark):
def CreateStorySet(self, options):
return page_sets.OortOnlinePageSet()
+
+
+# Disabled on reference builds because they don't support the new
+# Tracing.requestMemoryDump DevTools API. See http://crbug.com/540022.
+@benchmark.Disabled('reference')
+@benchmark.Disabled('android')
+class OortOnlineTBM(perf_benchmark.PerfBenchmark):
+ """OortOnline benchmark that measures WebGL and V8 performance.
+ URL: http://oortonline.gl/#run
+ Info: http://v8project.blogspot.de/2015/10/jank-busters-part-one.html
+ """
+
+ def SetExtraBrowserOptions(self, options):
+ options.AppendExtraBrowserArgs([
+ # TODO(perezju): Temporary workaround to disable periodic memory dumps.
+ # See: http://crbug.com/513692
+ '--enable-memory-benchmarking',
+ # TODO(ssid): Remove this flag after fixing http://crbug.com/461788.
+ '--no-sandbox'
+ ])
+
+ def CreateStorySet(self, options):
+ return page_sets.OortOnlineTBMPageSet()
+
+ def CreateTimelineBasedMeasurementOptions(self):
+ v8_gc_latency_categories = [
+ 'blink.console', 'renderer.scheduler', 'v8', 'webkit.console']
+ smoothness_categories = [
+ 'webkit.console', 'blink.console', 'benchmark', 'trace_event_overhead']
+ categories = list(set(v8_gc_latency_categories + smoothness_categories))
+ memory_categories = 'blink.console,disabled-by-default-memory-infra'
+ category_filter = tracing_category_filter.TracingCategoryFilter(
+ memory_categories)
+ for category in categories:
+ category_filter.AddIncludedCategory(category)
+ options = timeline_based_measurement.Options(category_filter)
+ options.SetTimelineBasedMetrics([v8_gc_latency.V8GCLatency(),
+ smoothness.SmoothnessMetric(),
+ memory_timeline.MemoryTimelineMetric()])
+ return options
+
+ @classmethod
+ def Name(cls):
+ return 'oortonline_tbm'
+
+ @classmethod
+ def ValueCanBeAddedPredicate(cls, value, is_first_result):
+ if value.tir_label in ['Begin', 'End']:
+ return value.name.startswith('memory_') and 'v8_renderer' in value.name
+ else:
+ return value.tir_label == 'Running'
« no previous file with comments | « no previous file | tools/perf/page_sets/oortonline.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698