5 ms·
Anecdotally, I've found that most performance hick-ups don't come from computation blocking the ui, but from rendering one part of the ui blocking every other p
by coderzach 12y ago
Anecdotally, I've found that most performance hick-ups don't come from computation blocking the ui, but from rendering one part of the ui blocking every other part from rendering.
The solution to that being parallel or async paint/layout, which is something I never hear mentioned (probably because it's a really hard problem).
- Joe8Bit 12y agoServo is actually in the process of implementing a parallel layout engine[1][2] 1: http://en.wikipedia.org/wiki/Servo_(layout_engine) http://en.wikipedia.org/wiki/Servo_(layout_engine) 2: http://pcwalton.github.io/blog/2014/02/25/revamped-parallel-layout-in-servo/ http://pcwalton.github.io/blog/2014/02/25/revamped-parallel-...
- amelius 12y agoInteresting. I wonder how they handle incremental rendering though. Only the forward-path is described in your reference [2].
- sanxiyn 12y agoAs far as I can tell there is nothing unusual or difficult here. Servo's incremental layout implementation is here: https://github.com/servo/servo/blob/master/components/layout/incremental.rs https://github.com/servo/servo/blob/master/components/layout...
- kibwen 12y agoThey've recently landed a tool that makes it possible to visualize the parallel rendering: https://github.com/servo/servo/pull/4969 https://github.com/servo/servo/pull/4969
- idbentley 12y agoI believe that the Servo project (https://github.com/servo/servo https://github.com/servo/servo) is attempting to address exactly this.