Closed Bug 1104905 Opened 10 years ago Closed 9 years ago

2% Linux*|win8 a11y Talos regression on inbound (v.36) Nov 19th from push c9c720eea5b1

Categories

(Core :: Layout, defect)

All
Linux
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: jmaher, Unassigned)

References

Details

(Keywords: perf, regression, Whiteboard: [talos_regression])

Summary: 2% Linux a11y Talos regression on inbound (v.36) Nov 19th from push c9c720eea5b1 → 2% Linux*|win8 a11y Talos regression on inbound (v.36) Nov 19th from push c9c720eea5b1
Depends on: 1104923
No longer depends on: 1104923
Are we seeing any other significant regressions from that push? (I haven't noticed other reports that seem to point at it.) It's certainly plausible that it could have an impact, as it means a lot of core layout code is having to test conditions that were previously optimized away as compile-time constants, but in most cases the added work is negligible in comparison to everything else layout is doing. David, any insight into how a11y talos would be exercising layout particularly hard, in order to show a regression that other tests don't have?
(In reply to Jonathan Kew (:jfkthame) from comment #2) > Are we seeing any other significant regressions from that push? (I haven't > noticed other reports that seem to point at it.) It's certainly plausible > that it could have an impact, as it means a lot of core layout code is > having to test conditions that were previously optimized away as > compile-time constants, but in most cases the added work is negligible in > comparison to everything else layout is doing. > > David, any insight into how a11y talos would be exercising layout > particularly hard, in order to show a regression that other tests don't have? off hand I can't think of something, but I don't really know what that push effects.
In principle, it could make many layout calculations/operations more expensive, because tests such as if (reflowState.GetWritingMode().IsVertical()) { ... } else { ... } will no longer be compile-time constants where the compiler can optimize away the entire test (and one of the branches); it'll have to actually test a variable and branch accordingly. Various checks of the writing-mode will be happening at every level of the frame tree, as frames and reflow-states are constructed, measured, etc. What surprises me is that a regression would show up on a11y talos, but not (afaik) on other tests, as the effect -- which I'd expect to be very slight, and hoped would be too insignificant to detect -- ought to be similar across any test that does lots of layout. cc'ing smontagu, who has been the other person behind much of the writing-mode support.
this is now on mozilla-beta, apparently only for linux*
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.