Issue metadata
Sign in to add a comment
|
10.1%-23.2% regression in blink_perf.shadow_dom at 535302:535403 |
||||||||||||||||||||||
Issue descriptionSee the link to graphs below.
,
Feb 12 2018
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/16dde03d840000
,
Feb 13 2018
📍 Found significant differences after each of 2 commits. https://pinpoint-dot-chromeperf.appspot.com/job/16dde03d840000 Introduce slot-in-flat-tree behind experimental flag. by futhark@chromium.org https://chromium.googlesource.com/chromium/src/+/2faa2b6b25dc948985640efbb5f4b6b5c38efbcb Rename GetWebTaskRunner() to GetTaskRunner() in modules/. by yutak@chromium.org https://chromium.googlesource.com/chromium/src/+/a5eeff12b16a3506960fbd698d3c2aef444b2d4e Understanding performance regressions: http://g.co/ChromePerformanceRegressions
,
Feb 13 2018
,
Feb 13 2018
Actually, I think this is due to my CL changing the return value type to scoped_refptr<>, adding extra ref churn. I'm going to revert the return type to a plain pointer, which should fix this.
,
Feb 13 2018
Well, I would say my CL and futhark's change are equally suspicious -- I'm going to land my fix anyway to prove or disprove my theory. futhark@, you may want to research on your CL in parallel.
,
Feb 13 2018
After I think about this, I'm more convinced that my CL was NOT the culprit, so I'm not landing the speculative fix for my CL. futhark, I'm re-assigning you since yours is more likely to be causing the regression -- sorry for the mess-up on my side.
,
Feb 15 2018
,
Feb 15 2018
I've confirmed that it's the slot-in-flat-tree enabled in experimental that's causing this. I've run the perf-test through callgrind. The test is a wide and deep tree of shadow dom v1 hosts which all contains a slot. With slots in the flat tree, we do more work for slot elements. We store ComputedStyle for them as we would for other display:contents elements in order to inherit down to assigned nodes which means we create more element rare data as well as storing the ComputedStyle. Callgrind shows there's generally more work done for slots both for style recalc and layout tree building in this case, but I haven't identified anything suspicious or unexpected, really. Running this test in WebKit MiniBrowser which includes slot elements in the flat tree shows they're running the large+deep test at ~6800ms while my Content Shell is at ~2700ms running locally.
,
Feb 15 2018
SGTM for WontFix. Thank you for the investigation. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by 42576172...@developer.gserviceaccount.com
, Feb 12 2018