Live data from Hacker News

This Week In Servo 69

blog.servo.org

51–60 of 70 posts

Re: This Week In Servo 69

#51

Servo is using zero-copy parallel parsing of html, css and parallel rendering, right? Is it trying to reduce in-going data duplication? Any insiders (actually understanding this questions ;) who can comment on this?

Parsing is serial for a single source, but multiple things (CSS, HTML, multiple HTML files) can be parsed at the same time. Also, the thread running JS (which drives HTML parsing) is separate from another page's JS thread. There can be many of these per process unlike Firefox and (I believe) Chrome.

CSS matching and layout have fine-grained parallel algorithms built on top of work stealing queues. Rendering is handled totally on the GPU (as opposed to other browsers which just offload compositing).

Re: This Week In Servo 69

#52
post #8

Does anyone know what is on Y axis in comparison graph? Is it load time in miliseconds? Are green and red lines for Firefox and others for servo? Servo is written in every case there, but green and red have "gecko" prefix.

Yeah, that graph is inscrutable.

We know. It's not really meant for public consumption, and we are trying to fit into the monitoring pipelines the Firefox team has already created. This should improve over time as we get better at using that infrastructure, and we'll make sure to post readable versions when we are trying to reach out to a wider audience.

Re: This Week In Servo 69

#53

Servo would be more compelling for use with commercial software if had MIT or Apache license. The MPL isn't as bad as GPL but still isn't as generous to the developer as MIT or Apache. With the right license, Servo would be a slam dunk for replacing CEF in commercial software that prohibits reversing or tampering.

The license isn't really up for negotiation, but I'm curious what you think there is to gain with more liberal licensing? All the competing engines are either equivalently or more restrictively licensed, no?

Re: This Week In Servo 69

#54

Earlier quoted context omitted.

Yeah, that graph is inscrutable.

We know. It's not really meant for public consumption, and we are trying to fit into the monitoring pipelines the Firefox team has already created. This should improve over time as we get better at using that infrastructure, and we'll make sure to post readable versions when we are trying to reach out to a wider audience.

Thanks for the general fix. Appreciated! In this case, just a few words of explanation in the blog post would have been sufficient ;)

Re: This Week In Servo 69

#55

> https://treeherder.allizom.org/perf.html#/graphs?timerange=2... > a new automated page load testing performance infrastructure that he has been testing. It compares Servo daily builds against Firefox for page load on a subset of the Alexa Top 1000 sites. Check it out! I don't understand the graphs under the link. Under all colors it says "servo" and "linux64". So what is Firefox (gecko), what servo?

Not to be negative, but I don't know if the benchmarks tell you much given the fact that Servo still has a ways to go before it renders sites properly.

I periodically test it out (most recently yesterday, in fact) and on popular sites like espn.com and cnn.com it doesn't render them properly. Meaning, not the padding is a little off, but parts of the page simply don't render at all.

This is not a criticism of their efforts, which are impressive, just pointing out that it might not be ready to compare in terms of performance.

Re: This Week In Servo 69

#56

> https://treeherder.allizom.org/perf.html#/graphs?timerange=2... > a new automated page load testing performance infrastructure that he has been testing. It compares Servo daily builds against Firefox for page load on a subset of the Alexa Top 1000 sites. Check it out! I don't understand the graphs under the link. Under all colors it says "servo" and "linux64". So what is Firefox (gecko), what servo?

Those that start with "gecko." are the gecko benchmarks. The others are servo. I'm not sure of the difference between the servo and linux64 links.

(Edited for clarity).

Re: This Week In Servo 69

#57
post #17

Earlier quoted context omitted.

They changed the implementation from always iterating over this 6000 length array: https://github.com/fduraffourg/servo/blob/8bb853f64354b2cc1b... to a HashSet which is only filled once based on a text file. The domain list also more easily updated now with a python script.

Why are there actual services in that list? I see all the variations of blogspot.com for example, which is definitely not an eTLD. Are services providing subdomain registration supposed to talk to Mozilla and get themselves added to it? I don't see deviantart in there.

Services which allow their users to post custom HTML and JavaScript to their own subdomains (without filtering to exclude scripts) need to go on that list to prevent eg evil.blogspot.com from stealing cookies that were set on innocent.blogspot.com

Re: This Week In Servo 69

#58
post #55

> https://treeherder.allizom.org/perf.html#/graphs?timerange=2... > a new automated page load testing performance infrastructure that he has been testing. It compares Servo daily builds against Firefox for page load on a subset of the Alexa Top 1000 sites. Check it out! I don't understand the graphs under the link. Under all colors it says "servo" and "linux64". So what is Firefox (gecko), what servo?

Not to be negative, but I don't know if the benchmarks tell you much given the fact that Servo still has a ways to go before it renders sites properly. I periodically test it out (most recently yesterday, in fact) and on popular sites like espn.com and cnn.com it doesn't render them properly. Meaning, not the padding is a little off, but parts of the page simply don't render at all. This is not a criticism of their e…

You are generally correct, and this is why we don't often publish numbers.

However we have made an effort to implement things we expect will have an effect on our performance first to counteract this.

There are also sites included in our page load suite that Servo renders quite well, and should be a fair comparison.

Another reason benchmarks are hard is that many of Servo's individual pieces are blazing fast, and we do many tasks in parallel, but end-to-end performance still needs work and tuning, which is why our initial page load numbers are below Firefox. This is in large part due to the community concentrating on those hard parts and not spending any time on things like the network stack or disk caching.

A key point is that there is so much low hanging fruit that it is falling off the tree by accident (as seen in the suffix list PR). New contributors can make a huge impact here with minimal effort.

Re: This Week In Servo 69

#59
post #57

Earlier quoted context omitted.

Why are there actual services in that list? I see all the variations of blogspot.com for example, which is definitely not an eTLD. Are services providing subdomain registration supposed to talk to Mozilla and get themselves added to it? I don't see deviantart in there.

Services which allow their users to post custom HTML and JavaScript to their own subdomains (without filtering to exclude scripts) need to go on that list to prevent eg evil.blogspot.com from stealing cookies that were set on innocent.blogspot.com

Why is that the responsibility of the browser and not the website's owner?
Post reply on HN