Javascript Performance Thread

Discussion about official Mozilla Firefox builds
Post Reply
User avatar
bogas04
Posts: 977
Joined: May 18th, 2010, 1:14 am

Re: Javascript Performance Thread

Post by bogas04 »

^ That means it will help in PDF.js and stuff like that ? Did you try it on Octane benchmark?

Alright , I did it , it does improve PDF.js score in Octane (~26%) and Crypto too (~20%). But has some losses too...

http://i.imgur.com/b6B8f.png
Last edited by bogas04 on November 27th, 2012, 12:24 pm, edited 1 time in total.
bogas04.github.io
MacBook Air Mid 2013 |@bogas04
Josa
Posts: 7360
Joined: July 28th, 2009, 4:52 pm

Re: Javascript Performance Thread

Post by Josa »

I think it will only boost performance after the patch from https://bugzilla.mozilla.org/show_bug.cgi?id=785905. It's a 15ms win on Sunspider (at least using certain heuristic).
User avatar
Grantius
Posts: 1545
Joined: June 28th, 2011, 4:14 pm
Contact:

Re: Javascript Performance Thread

Post by Grantius »

Omega X wrote:Off main thread compilation is not off main thread compositing. Coincidentally they can use the same abbreviation, but the devs don't call it OMTC to keep confusion down.

Turning it on will probably not gain much speed, but script loading might improve. Assuming that the pref works.


Ah thanks, that clears it up for me.
Micro gaming box: AMD A10-7800 APU, 8gb RAM M350 ITX case (size of a book), Windows 10/Ubuntu
Tablet/Laptop: Asus Transformer T100, Intel Atom 2GB RAM, Windows 10 x86
Mobile:Xiaomi Redmi Note 3 Pro
User avatar
Grantius
Posts: 1545
Joined: June 28th, 2011, 4:14 pm
Contact:

Re: Javascript Performance Thread

Post by Grantius »

bogas04 wrote:^ That means it will help in PDF.js and stuff like that ? Did you try it on Octane benchmark?

Alright , I did it , it does improve PDF.js score in Octane (~26%) and Crypto too (~20%). But has some losses too...

http://i.imgur.com/b6B8f.png


I enabled it and found that outlook.com and a couple of other heavy websites seem to run faster on a Core 2 duo.

Might be a placebo though.
Micro gaming box: AMD A10-7800 APU, 8gb RAM M350 ITX case (size of a book), Windows 10/Ubuntu
Tablet/Laptop: Asus Transformer T100, Intel Atom 2GB RAM, Windows 10 x86
Mobile:Xiaomi Redmi Note 3 Pro
h4writer
Posts: 23
Joined: September 13th, 2011, 4:25 pm

Re: Javascript Performance Thread

Post by h4writer »

bogas04 wrote:Alright , I did it , it does improve PDF.js score in Octane (~26%) and Crypto too (~20%). But has some losses too...
http://i.imgur.com/b6B8f.png


You might want to run that benchmark multiple times, because the numbers of Crypto and Splay aren't really stable for me... (with and without off main thread compilation)
irc nick: h4writer #ionmonkey / #jsapi, https://twitter.com/h4writer
User avatar
Omega X
Posts: 8225
Joined: October 18th, 2007, 2:38 pm
Location: A Parallel Dimension...

Re: Javascript Performance Thread

Post by Omega X »

Be sure that you're restarting the browser after every test run.
iwod
Posts: 1033
Joined: July 18th, 2003, 10:09 pm

Re: Javascript Performance Thread

Post by iwod »

Grantius wrote:
bogas04 wrote:^ That means it will help in PDF.js and stuff like that ? Did you try it on Octane benchmark?

Alright , I did it , it does improve PDF.js score in Octane (~26%) and Crypto too (~20%). But has some losses too...

http://i.imgur.com/b6B8f.png


I enabled it and found that outlook.com and a couple of other heavy websites seem to run faster on a Core 2 duo.

Might be a placebo though.


I dont think JS performance matters as much in terms of benchmarks. What we feel faster is how Firefox manages to response to out input, i.e Snappy. And Off Thread Compilation is one of those things that we will feel on Heavy Website.
greg86
Posts: 50
Joined: January 28th, 2007, 11:33 am
Location: Germany
Contact:

Re: Javascript Performance Thread

Post by greg86 »

http://www.arewefastyet.com/ with new Ajax Design
phuzi0n
Posts: 517
Joined: June 23rd, 2010, 5:48 pm

Re: Javascript Performance Thread

Post by phuzi0n »

greg86 wrote:http://www.arewefastyet.com/ with new Ajax Design

That is really neat. I like how there's historical results on the left and more recent results on the right. I also like how you can click on a point to have the hover info become a permanent box so that you don't have to fiddle with the hover boxes disappearing when you want to click on the changeset.
bksening
Posts: 26
Joined: December 22nd, 2009, 5:05 pm

Re: Javascript Performance Thread

Post by bksening »

But what if we want to see more history than half a year?

The previous functionality of adding &runs=1000 or &runs=2000 to see multi-year history seems no longer working.
User avatar
Grantius
Posts: 1545
Joined: June 28th, 2011, 4:14 pm
Contact:

Re: Javascript Performance Thread

Post by Grantius »

Do most websites have scripts long enough to be affected by IonMonkey? Or is it just for benchmarks?
Micro gaming box: AMD A10-7800 APU, 8gb RAM M350 ITX case (size of a book), Windows 10/Ubuntu
Tablet/Laptop: Asus Transformer T100, Intel Atom 2GB RAM, Windows 10 x86
Mobile:Xiaomi Redmi Note 3 Pro
Tametomo
Posts: 42
Joined: April 1st, 2011, 10:03 am

Re: Javascript Performance Thread

Post by Tametomo »

bksening wrote:But what if we want to see more history than half a year?

The previous functionality of adding &runs=1000 or &runs=2000 to see multi-year history seems no longer working.


There's no need for that any more, as the machines show their complete back history. Machines 11 and 12 just happen to not go back farther than 6 months or so, but as they have more data points, the graph will further expand. While for machines 9 and 10, which don't really update any more, you can see a graph going back a little over a year in time, which was when AWFY was last redesigned, and they changed how they displayed the data drastically, much like they have done yet again. However, even that data is [url="http://arewefastyet.com/historic/old-awfy.php"]preserved[/url] on the site still.

What you now have instead is that you can highlight a particular time range which you want to see a more detailed report for and click on it, and which you can then zoom out of later when you're done looking at it by double clicking on that zone.

IMO, this is far more useful than specifying the number of runs was, since before, there really was no good way to look at older data, since you'd be smothered in data points under the old system, since you had to get all data points up to a particular place which you want to highlight.

The downside though is that this is a lot less sharable than it was, and which it'd be nice to have an improvement for in the future. So if you want someone to zoom in on a particular time, you need to tell them to do it themselves, instead of being able to give them a link with that particular time already zoomed in on all of the data. It would also be rather nice if we later had an option to be able to apply the same zoom in on *all* graphs on the page which we're looking at at the moment, as well as an option to be able to see all test breakdowns on one page.

Minor nits, in any case, and which can be resolved in this new system.
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Javascript Performance Thread

Post by patrickjdempsey »

It would be nice to see long trends going back to the start of the project.
Tip of the day: If it has "toolbar" in the name, it's crap.
What my avatar is about: https://addons.mozilla.org/en-US/seamonkey/addon/sea-fox/
h4writer
Posts: 23
Joined: September 13th, 2011, 4:25 pm

Re: Javascript Performance Thread

Post by h4writer »

Grantius wrote:Do most websites have scripts long enough to be affected by IonMonkey? Or is it just for benchmarks?


Depends on the websites you use ... If you only go to oldschool sites still using flash or even worse static page with GIFS. In that case you will see no improvement by IonMonkey. But as soon as you go to JS dependend sites, IM will kick in. So IonMonkey is by no means just for benchmarks, but for the increased use and need of JS being fast enough (with extreme examples of running pdf viewers, games, compiled c++ to JS in the browser, but also for your gmail inbox, facebook likes or 9gag reads)
irc nick: h4writer #ionmonkey / #jsapi, https://twitter.com/h4writer
Josa
Posts: 7360
Joined: July 28th, 2009, 4:52 pm

Re: Javascript Performance Thread

Post by Josa »

haytjes wrote:
Grantius wrote:Do most websites have scripts long enough to be affected by IonMonkey? Or is it just for benchmarks?


Depends on the websites you use ... If you only go to oldschool sites still using flash or even worse static page with GIFS. In that case you will see no improvement by IonMonkey. But as soon as you go to JS dependend sites, IM will kick in. So IonMonkey is by no means just for benchmarks, but for the increased use and need of JS being fast enough (with extreme examples of running pdf viewers, games, compiled c++ to JS in the browser, but also for your gmail inbox, facebook likes or 9gag reads)

Actually, no. https://blog.mozilla.org/javascript/201 ... irefox-18/ "IonMonkey is targeted at long-running applications (we fall back to JägerMonkey for very short ones)."
and
"Mr. S wrote on September 12, 2012 at 1:08 pm:

How do you determine what a “long-running” application is?

David Anderson wrote on September 12, 2012 at 6:36 pm:

If a function/loop runs enough times (I think right now it’s 10,000), the higher-powered compiler pays off. That’s not really a good definition of “long-running application”, it’s more like, “something that will benefit from the compiler”. "

There's a compilation flag that builds IM without this 10k thing. It's "ion-eager" but I think it has a few bugs. And I don't know if it's faster than what we have now (I don't think so, that's what the Baseline Compiler should be about, be fast for small/short functions).
Post Reply