
Servo: Parallelizing the Browser - todd8
http://www.joshmatthews.net/fosdemservo/
======
mercurial
I wonder if Servo is advanced enough to get some performance numbers on large
pages compared to other engines. In any case, I'm looking forward to see what
becomes of it. Like Rust, it seems a well thought-out approach to solving
difficult problems.

~~~
larsberg
My intern, Laleh Beni, gave a talk last week where she compared the
performance of Servo on a synthetic benchmark to that of Firefox on Android:
[https://air.mozilla.org/servos-power-
struggle/](https://air.mozilla.org/servos-power-struggle/)

We're not publishing comparisons with other engines for now because we don't
support the full web platform yet in Servo and it doesn't make for a fair
comparison against them. Certainly, we benchmark against other engines
internally and try to ensure Servo's page load times are at least as fast as
the other engines. That said, we don't have incremental layout yet, so Servo
is _way_ behind on any measurement involving dynamic page updates.

Lots of good progress, but we also still have lots of work to do!

(shameless plug to solicit contributors:
[https://github.com/servo/servo/blob/master/CONTRIBUTING.md](https://github.com/servo/servo/blob/master/CONTRIBUTING.md)
)

------
bburky
Video:
[https://archive.fosdem.org/2014/schedule/event/servo_buildin...](https://archive.fosdem.org/2014/schedule/event/servo_building_a_parallel_web_browser/)

------
sbierwagen
(slides)

------
nobodysfool
I just don't understand the justification for this.

> pre 2000

I'm pretty sure a lot of good technology is written pre-2000. Why you'd want
to throw it away is beyond me. Just because something is old doesn't mean it's
outdated.

> difficult to experiment or fundamentally change

Generally with mature products this is true, so the solution is to use an
immature product? Why not just take the time to learn the existing products so
that you can experiment or make your changes.

> security and performance are hard

It's always been that way, and it always will be. I doubt a new
library/platform will change that. The only thing it will do is make the
developer an expert on the system (since she designed it).

The diagrams don't make sense, and seem to miss the point. Not all scripts
will cause the layout to change. Some may, but the renderer shouldn't be
controlling the script, except in extreme or very specific cases.

~~~
vertex-four
It's a research project. Maturity has nothing to do with it. There's literally
no plans for Servo apart from research.

> It's always been that way, and it always will be. I doubt a new
> library/platform will change that.

Except that we have ridiculously few memory-safe systems programming
languages. Rust is one, I _believe_ Ada is another. Provably memory-safe code
means no more stack/buffer overflows, no more writing to random bits of
memory, and in Rust's case it can be for almost free.

~~~
pcwalton
Ada isn't memory-safe with dynamic allocation (unless you use GC). Dynamic
allocation is essential for a Web browser.

------
imaginenore
Holy crap, the background image for that presentation slides is 780KB and the
background image for the page is 786KB

[http://www.joshmatthews.net/fosdemservo/themes/mozilla/image...](http://www.joshmatthews.net/fosdemservo/themes/mozilla/images/bg-
darkgrey-2.png)

[http://www.joshmatthews.net/fosdemservo/themes/mozilla/image...](http://www.joshmatthews.net/fosdemservo/themes/mozilla/images/bg-
sandstone-2.png)

Think of the mobile users!

