1 # Copyright 2014 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.
5 from telemetry
import benchmark
7 from measurements
import v8_detached_context_age_in_gc
8 from measurements
import v8_gc_times
12 @benchmark.Disabled('win') # crbug.com/416502
13 class V8GarbageCollectionCases(benchmark
.Benchmark
):
14 """Measure V8 GC metrics on the garbage collection cases."""
15 test
= v8_gc_times
.V8GCTimes
16 page_set
= page_sets
.GarbageCollectionCasesPageSet
20 return 'v8.garbage_collection_cases'
22 # Disabled on Win due to crbug.com/416502.
23 # TODO(rmcilroy): reenable on reference when crbug.com/456845 is fixed.
24 @benchmark.Disabled('win', 'reference')
25 class V8Top25(benchmark
.Benchmark
):
26 """Measures V8 GC metrics on the while scrolling down the top 25 web pages.
28 http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
29 test
= v8_gc_times
.V8GCTimes
30 page_set
= page_sets
.Top25SmoothPageSet
34 return 'v8.top_25_smooth'
36 @benchmark.Enabled('android')
37 class V8KeyMobileSites(benchmark
.Benchmark
):
38 """Measures V8 GC metrics on the while scrolling down key mobile sites.
40 http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
41 test
= v8_gc_times
.V8GCTimes
42 page_set
= page_sets
.KeyMobileSitesSmoothPageSet
46 return 'v8.key_mobile_sites_smooth'
48 class V8DetachedContextAgeInGC(benchmark
.Benchmark
):
49 """Measures the number of GCs needed to collect a detached context.
51 http://www.chromium.org/developers/design-documents/rendering-benchmarks"""
52 test
= v8_detached_context_age_in_gc
.V8DetachedContextAgeInGC
53 page_set
= page_sets
.PageReloadCasesPageSet
57 return 'v8.detached_context_age_in_gc'