The default bug view has changed. See this FAQ.

stylo: Stylo is slower than Gecko on etc/ci/performance TP5 tests

NEW
Assigned to

Status

()

Core
CSS Parsing and Computation
P1
normal
2 months ago
14 days ago

People

(Reporter: shinglyu, Assigned: bholley)

Tracking

(Depends on: 2 bugs, Blocks: 2 bugs)

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

2 months ago
I ran the performance test in Servo's etc/ci/performance on TP5 test suite. Here are the result for comparing Stylo (release build) with Gecko 52

=================
 595.0  774.0 +179.0  +30.08%   http://localhost:8000/page_load_test/tp5n/globo.com/www.globo.com/index.html.
 360.0  792.0 +432.0 +120.00%   http://localhost:8000/page_load_test/tp5n/56.com/www.56.com/index.html.
 287.0  524.0 +237.0  +82.58%   http://localhost:8000/page_load_test/tp5n/rakuten.co.jp/www.rakuten.co.jp/index.html.
 135.0  228.0  +93.0  +68.89%   http://localhost:8000/page_load_test/tp5n/chemistry.about.com/chemistry.about.com/index.html.
 293.0  397.0 +104.0  +35.49%   http://localhost:8000/page_load_test/tp5n/huffingtonpost.com/www.huffingtonpost.com/index.html.
 203.0  275.0  +72.0  +35.47%   http://localhost:8000/page_load_test/tp5n/imgur.com/imgur.com/gallery/index.html.
 135.0  212.0  +77.0  +57.04%   http://localhost:8000/page_load_test/tp5n/ezinearticles.com/ezinearticles.com/index.html@Migraine-Ocular---The-Eye-Migraines&id=4684133.html.
 259.0  661.0 +402.0 +155.21%   http://localhost:8000/page_load_test/tp5n/myspace.com/www.myspace.com/albumart.html.
 160.0  310.0 +150.0  +93.75%   http://localhost:8000/page_load_test/tp5n/mail.ru/mail.ru/index.html.
 230.0  345.0 +115.0  +50.00%   http://localhost:8000/page_load_test/tp5n/tudou.com/www.tudou.com/index.html.
  91.0  198.0 +107.0 +117.58%   http://localhost:8000/page_load_test/tp5n/goo.ne.jp/goo.ne.jp/index.html.
 198.0  353.0 +155.0  +78.28%   http://localhost:8000/page_load_test/tp5n/bbc.co.uk/www.bbc.co.uk/news/index.html.
 381.0  564.0 +183.0  +48.03%   http://localhost:8000/page_load_test/tp5n/youku.com/www.youku.com/index.html.
 104.0  150.0  +46.0  +44.23%   http://localhost:8000/page_load_test/tp5n/w3.org/www.w3.org/standards/webdesign/htmlcss.html.
 136.0  218.0  +82.0  +60.29%   http://localhost:8000/page_load_test/tp5n/beatonna.livejournal.com/beatonna.livejournal.com/index.html.
 170.0  362.0 +192.0 +112.94%   http://localhost:8000/page_load_test/tp5n/dailymotion.com/www.dailymotion.com/us.html.
 190.0  307.0 +117.0  +61.58%   http://localhost:8000/page_load_test/tp5n/cgi.ebay.com/cgi.ebay.com/ALL-NEW-KINDLE-3-eBOOK-WIRELESS-READING-DEVICE-W-WIFI-/130496077314@pt=LH_DefaultDomain_0&hash=item1e622c1e02.html.
 172.0  281.0 +109.0  +63.37%   http://localhost:8000/page_load_test/tp5n/reddit.com/www.reddit.com/index.html.
 231.0  362.0 +131.0  +56.71%   http://localhost:8000/page_load_test/tp5n/stackoverflow.com/stackoverflow.com/questions/184618/what-is-the-best-comment-in-source-code-you-have-ever-encountered.html.
 455.0  599.0 +144.0  +31.65%   http://localhost:8000/page_load_test/tp5n/dailymail.co.uk/www.dailymail.co.uk/ushome/index.html.
 249.0  373.0 +124.0  +49.80%   http://localhost:8000/page_load_test/tp5n/yelp.com/www.yelp.com/biz/alexanders-steakhouse-cupertino.html.
 143.0  280.0 +137.0  +95.80%   http://localhost:8000/page_load_test/tp5n/youtube.com/www.youtube.com/music.html.
 407.0  647.0 +240.0  +58.97%   http://localhost:8000/page_load_test/tp5n/amazon.com/www.amazon.com/Kindle-Wireless-Reader-Wifi-Graphite/dp/B002Y27P3M/507846.html.
  56.0   75.0  +19.0  +33.93%   http://localhost:8000/page_load_test/tp5n/google.com/www.google.com/search@q=mozilla.html.
 214.0  444.0 +230.0 +107.48%   http://localhost:8000/page_load_test/tp5n/spiegel.de/www.spiegel.de/index.html.
 173.0  283.0 +110.0  +63.58%   http://localhost:8000/page_load_test/tp5n/page.renren.com/page.renren.com/index.html.
======================

The columns means (from left to right)
* Gecko page load time
* Stylo page load time
* (Stylo - Gecko) page load time difference
* page load time difference in percentage
* Test case

All the page load time for Stylo is slower then Gecko, ranging from 30% to 240% slower.

You can find instructions on how to run this yourself here: https://github.com/servo/servo/tree/master/etc/ci/performance
(Reporter)

Comment 1

2 months ago
cc Chris
Flags: needinfo?(cpeterson)
Yeah, this wouldn't surprise me a lot right now. We'd be faster in a full restyle I think, but I suspect these results may mean one of two things:

 * That our incremental restyle isn't quite there yet (and that's known).
 * That our CSS parser is slower (see https://github.com/servo/servo/issues/13778) for an example.

CCing Bobby and Simon for that.

Shing, could you run an instrumented build against these test cases to see how many elements are we restyling? That'd mean adding a counter in recalc_style_at in Servo, and in ElementRestyler::Restyle in Gecko, and check the difference.

It'd be nice to know if the page load time drop from stylo comes from CSS parsing, or restyling (or both).
Blocks: 1289864
No longer blocks: 1243581
Shing, great work getting Talos running with Stylo!

Blocking the stylo-nightly milestone bug 1330412 because we don't want to enable Stylo in Nightly until it is faster than Gecko.
Blocks: 1330412
Flags: needinfo?(cpeterson)
Summary: [Stylo] Stylo is slow → [Stylo] Stylo is slower than Gecko on tp5 Talos tests
Depends on: 1331843
Depends on: 1331848
(Reporter)

Comment 4

2 months ago
Emilio: Is the instrumented build code available? Or are you suggesting me writing one myself?

Chris: It's not Talos yet, I'm using Servo's performance test, but running the same test case as Talos.
(Reporter)

Updated

2 months ago
Summary: [Stylo] Stylo is slower than Gecko on tp5 Talos tests → [Stylo] Stylo is slower than Gecko on etc/ci/performance Talos tests
(Reporter)

Updated

2 months ago
Summary: [Stylo] Stylo is slower than Gecko on etc/ci/performance Talos tests → [Stylo] Stylo is slower than Gecko on etc/ci/performance TP5 tests
Depends on: 1331856
(In reply to Shing Lyu [:shinglyu] from comment #4)
> Emilio: Is the instrumented build code available? Or are you suggesting me
> writing one myself?

I think he may have been suggesting the latter, but it might be a bit involved. I filed bug 1331856 to do this.
Assignee: nobody → bobbyholley
Priority: -- → P1
Summary: [Stylo] Stylo is slower than Gecko on etc/ci/performance TP5 tests → stylo: Stylo is slower than Gecko on etc/ci/performance TP5 tests
You need to log in before you can comment on or make changes to this bug.