summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorkbr <kbr@chromium.org>2015-05-27 14:44:31 -0700
committerCommit bot <commit-bot@chromium.org>2015-05-27 21:45:01 +0000
commit9efac1bd79e8741aba9b65ba619b63eb122ef8e1 (patch)
treecfe22839fa14350bfba0726df937539d900c4b35 /tools
parent235b3f097ca97e158b2fb6f7161c5e12c38fb5ed (diff)
downloadchromium_src-9efac1bd79e8741aba9b65ba619b63eb122ef8e1.zip
chromium_src-9efac1bd79e8741aba9b65ba619b63eb122ef8e1.tar.gz
chromium_src-9efac1bd79e8741aba9b65ba619b63eb122ef8e1.tar.bz2
Only run blink_perf.canvas benchmarks if WebGL is supported.
Use the WebGLSupportedSharedState class to determine whether to run the individual benchmarks. (All of these pages use WebGL.) Re-enable the benchmarks on Linux. Tested locally with --extra-browser-args=--disable-webgl and verified that the benchmarks were skipped cleanly, rather than throwing exceptions as they were on the Linux VM perf bots. BUG=488059 CQ_EXTRA_TRYBOTS=tryserver.chromium.perf:linux_perf_bisect;tryserver.chromium.perf:mac_perf_bisect;tryserver.chromium.perf:win_perf_bisect;tryserver.chromium.perf:android_nexus5_perf_bisect Review URL: https://codereview.chromium.org/1156193004 Cr-Commit-Position: refs/heads/master@{#331660}
Diffstat (limited to 'tools')
-rw-r--r--tools/perf/benchmarks/blink_perf.py19
1 files changed, 14 insertions, 5 deletions
diff --git a/tools/perf/benchmarks/blink_perf.py b/tools/perf/benchmarks/blink_perf.py
index 8367f86..e423a8b 100644
--- a/tools/perf/benchmarks/blink_perf.py
+++ b/tools/perf/benchmarks/blink_perf.py
@@ -11,15 +11,20 @@ from telemetry.core import util
from telemetry import page as page_module
from telemetry.page import page_set
from telemetry.page import page_test
+from telemetry.page import shared_page_state
from telemetry.value import list_of_scalar_values
+from page_sets import webgl_supported_shared_state
+
BLINK_PERF_BASE_DIR = os.path.join(util.GetChromiumSrcDir(),
'third_party', 'WebKit', 'PerformanceTests')
SKIPPED_FILE = os.path.join(BLINK_PERF_BASE_DIR, 'Skipped')
-def CreatePageSetFromPath(path, skipped_file):
+def CreatePageSetFromPath(path, skipped_file,
+ shared_page_state_class=(
+ shared_page_state.SharedPageState)):
assert os.path.exists(path)
page_urls = []
@@ -59,7 +64,9 @@ def CreatePageSetFromPath(path, skipped_file):
ps = page_set.PageSet(file_path=os.getcwd()+os.sep,
serving_dirs=serving_dirs)
for url in page_urls:
- ps.AddUserStory(page_module.Page(url, ps, ps.base_dir))
+ ps.AddUserStory(page_module.Page(
+ url, ps, ps.base_dir,
+ shared_page_state_class=shared_page_state_class))
return ps
@@ -169,8 +176,7 @@ class BlinkPerfCSS(perf_benchmark.PerfBenchmark):
return CreatePageSetFromPath(path, SKIPPED_FILE)
-@benchmark.Disabled('linux', # http://crbug.com/488059
- 'xp') # http://crbug.com/488059
+@benchmark.Disabled('xp') # http://crbug.com/488059
class BlinkPerfCanvas(perf_benchmark.PerfBenchmark):
tag = 'canvas'
test = _BlinkPerfMeasurement
@@ -181,7 +187,10 @@ class BlinkPerfCanvas(perf_benchmark.PerfBenchmark):
def CreatePageSet(self, options):
path = os.path.join(BLINK_PERF_BASE_DIR, 'Canvas')
- return CreatePageSetFromPath(path, SKIPPED_FILE)
+ return CreatePageSetFromPath(
+ path, SKIPPED_FILE,
+ shared_page_state_class=(
+ webgl_supported_shared_state.WebGLSupportedSharedState))
class BlinkPerfDOM(perf_benchmark.PerfBenchmark):