Test failure oilpan_gc_times.key_silk_cases on android |
||||||||
Issue descriptionBuild is broken: oilpan_gc_times.key_silk_cases Revision range: chromium 395777 : 395812 Failing builders: Android Nexus5X WebView Perf (2): https://build.chromium.org/p/chromium.perf/builders/Android%20Nexus5X%20WebView%20Perf%20(2)
,
May 25 2016
,
May 25 2016
This is also affecting thread_times.key_silk_cases and smoothness.key_silk_cases According to this bisect job, https://build.chromium.org/p/tryserver.chromium.perf/builders/android_s5_perf_bisect/builds/672 The culprit seems to be this patch: Add an early abort for the CSSParserFastPaths transform path. For transforms that miss the fast path like "transform(1px, 1px) rotate(1deg)" we end up spending a lot of time building the transform list and doing string to double conversions for the function calls we do understand that were listed before the ones we didn't understand. This work ends up wasted and we have to redo it all inside the real CSSParser later. This patch introduces a scan over the string that tries to reject all transform things we don't understand in advance. This is not the best, since ideally we'd just remove the fast path and make the real parser just as fast, but in the meantime this at least avoids doing lots of wasted work. This patch makes the script in Animometer > Leaves 8% faster. The change is covered by the tests introduced in: https://codereview.chromium.org/2007823002 BUG=606211 Review-Url: https://codereview.chromium.org/1996343003 Cr-Commit-Position: refs/heads/master@{#395797} CCing the author of the patch and the owners of the other affected tests.
,
May 25 2016
The logs point to a timeout when running: http://jsbin.com/UVIgUTa/38/quiet This is affecting Linux and all Android platforms.
,
May 25 2016
Landed the revert: https://codereview.chromium.org/2009723003/
,
May 25 2016
Bots are starting to recover.
,
May 26 2016
=== Auto-CCing suspected CL author esprehn@chromium.org === Hi esprehn@chromium.org, the bisect results pointed to your CL below as possibly causing a regression. Please have a look at this info and see whether your CL be related. ===== BISECT JOB RESULTS ===== Status: completed ===== SUSPECTED CL(s) ===== Subject : Add an early abort for the CSSParserFastPaths transform path. Author : esprehn Commit description: For transforms that miss the fast path like "transform(1px, 1px) rotate(1deg)" we end up spending a lot of time building the transform list and doing string to double conversions for the function calls we do understand that were listed before the ones we didn't understand. This work ends up wasted and we have to redo it all inside the real CSSParser later. This patch introduces a scan over the string that tries to reject all transform things we don't understand in advance. This is not the best, since ideally we'd just remove the fast path and make the real parser just as fast, but in the meantime this at least avoids doing lots of wasted work. This patch makes the script in Animometer > Leaves 8% faster. The change is covered by the tests introduced in: https://codereview.chromium.org/2007823002 BUG=606211 Review-Url: https://codereview.chromium.org/1996343003 Cr-Commit-Position: refs/heads/master@{#395797} Commit : ad21c7423bc912e4c5287204d7c1eb57b994099a Date : Wed May 25 04:14:57 2016 ===== TESTED REVISIONS ===== Revision Exit Code Std Dev N Good? chromium@395792 0 N/A 20 good chromium@395795 0 N/A 20 good chromium@395796 0 N/A 20 good chromium@395797 1 N/A 20 bad <-- chromium@395802 1 N/A 20 bad chromium@395812 1 N/A 20 bad Bisect job ran on: android_nexus6_perf_bisect Bug ID: 614765 Test Command: src/tools/perf/run_benchmark -v --browser=android-chromium --output-format=chartjson --upload-results --also-run-disabled-tests oilpan_gc_times.key_silk_cases Test Metric: oilpan_gc/oilpan_gc Relative Change: Zero to non-zero Score: 99.9 Buildbot stdio: http://build.chromium.org/p/tryserver.chromium.perf/builders/android_nexus6_perf_bisect/builds/2199 Job details: https://chromeperf.appspot.com/buildbucket_job_status/9011668061118421232 Not what you expected? We'll investigate and get back to you! https://chromeperf.appspot.com/bad_bisect?try_job_id=5905885738565632 | O O | Visit http://www.chromium.org/developers/speed-infra/perf-bug-faq | X | for more information addressing perf regression bugs. For feedback, | / \ | file a bug with component Tests>AutoBisect. Thank you!
,
May 26 2016
Silly me doing UINT_MAX + 1, woops. Fixed by https://codereview.chromium.org/1996343003
,
May 26 2016
btw for context, this also exposes that the perf test is assigning transforms that have a missing closing paren (that's what caught the bug in my patch):
divs[d].matrix = new WebKitCSSMatrix(
"matrix3d(1,0,0,0," +
"0,1,0,0," +
"0,0,1,0," +
"0,0,0,1"); <== NOTE THE MISSING ) here
which meant that prior to my patch we were wasting time in the test on the CSSParserFastPaths only to discard it and then parse again with the real CSS parser since the fast path has pretty strict parsing rules, and while leaving off the closing paren is technically okay the fast path doesn't handle it because it assumes you're writing CSS more strictly. We could probably fix the fast path to understand hitting the end of the string if the correct number of arguments has been found is still valid too.
,
May 27 2016
Does anyone know how we can update the silk page set to add the missing paren? :)
,
May 27 2016
Looks like anyone can edit the jsbin page here: http://jsbin.com/UVIgUTa/edit?html,css,js,output And then re-record the pageset. Ethan, Ned, are these the most up-to-date docs on recording? https://www.chromium.org/developers/telemetry/record_a_page_set
,
May 27 2016
Yep. I think those instructions worked for me last time I did a re-record.
,
Mar 10 2017
|
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by robert...@chromium.org
, May 25 2016