3 ms·
> What is not clear about "parallelize layout" and "make better use of hardware"? The lack of a before/after demo. > No, it wasn't. What, specifically, were
by Touche 11y ago
> What is not clear about "parallelize layout" and "make better use of hardware"?
The lack of a before/after demo.
> No, it wasn't.
What, specifically, were the performance goals then?
> This is already done.
Link?
- pcwalton 11y ago> The lack of a before/after demo. See the graphs here: https://www.phoronix.com/scan.php?page=news_item&px=MTgzNDA https://www.phoronix.com/scan.php?page=news_item&px=MTgzNDA We also have various real-world performance demos showing that, for certain workloads, parallelism results in measurable FPS wins. I haven't wanted to get on stage and publicize them at this point, because it's early. But we do have them. > What, specifically, were the performance goals then? I wasn't involved with the design of flexbox, but I didn't see performance as the main goal. Rather, the goal was to make "springs and struts"-style UI layout easy to use, because simulating it in CSS2 had bad ergonomics. Performance wins, if anything, would be relative to doing all of the layout manually in JavaScript, not relative to the CSS2 primitives. Historically, relatively little attention has been paid to layout performance at all. The main performance wars have concerned DOM performance and JavaScript. (Look at what Dromaeo tests, for example.) > Link? I don't have time to create an actual demo for the specific thing you're asking for, but I've done many similar tests. Animating transforms will achieve 60FPS.
- Touche 11y ago> See the graphs here: https://www.phoronix.com/scan.php?page=news_item&px=MTgzNDA https://www.phoronix.com/scan.php?page=news_item&px=MTgzNDA That's not what I'm asking for. You're pointing to low-level metrics and I'm asking for high-level examples of things not achievable today that Servo will enable. > I don't have time to create an actual demo for the specific thing you're asking for, but I've done many similar tests. Animating transforms will achieve 60FPS. Understandable, well I know there are many such widgets on the web and I've never come across one that fits my requirements. Maybe they are all doing things as slowly as possible, but I doubt it.
- pcwalton 11y ago> That's not what I'm asking for. You're pointing to low-level metrics and I'm asking for high-level examples of things not achievable today that Servo will enable. I don't think there are many such things as stated, because the Web is technically capable of almost anything you want to do already. Even if we were to say that CSS is too slow to do the things you need to do (which I don't believe at all), you could always do the famo.us thing, rebuild your interface in WebGL (and even maybe throw out JS in favor of asm.js), and do anything you might possibly want to do in existing engines. What I think Servo will do is to make it easy to make Web apps fast, by eliminating the huge distinction between the slow paths and the fast paths. In my view this is the biggest performance win we can possibly get on the Web. To be sure, I'm not saying that Web developers are bad and that it's their fault :) The browsers have created this situation, after all. It's not that the Web is incapable of being fast. It's just performance on the Web is a minefield. I think the biggest thing Servo can do is to eliminate that minefield.