Firefox 3.5 at the top

June 30, 2009 8:23 am | 21 Comments

The web world is abuzz today with the release of Firefox 3.5. On the launch page, Mozilla touts the results of running SunSpider. Over on UA Profiler, I’ve developed a different set of tests that count the number of critical performance features browsers do, or don’t, have. Currently, there are 11 traits that are measured. Firefox 3.5 scores higher than any other browser with 10 out of 11 of the performance features browsers need to create a fast user experience.

Firefox 3.5 is a significant improvement over Firefox 3.0, climbing from 7/11 to 10/11 of these performance traits. Among the major browsers, Firefox 3.5 is followed by Chrome 2 (9/11), Safari 4 (8/11), IE 8 (7/11), and Opera 10 (6/11). Unfortunately, IE 6 and 7 have only 4 out of these 11 performance features, a sad state of affairs for today’s web developers and users.

The performance traits measured by UA Profiler include number of connections per hostname, maximum number of connections, parallel loading of scripts and stylesheets, proper caching of resources including redirects, the LINK PREFETCH attribute, and support for data: URLs. When I started UA Profiler, none of the browsers were scoring very high. But there’s great progress in the last year. It’s time to raise the bar! I plan on adding more tests to UA Profiler this summer, and hope the browser development teams will continue to rise to the challenge in an effort to make the Web a faster place for all of us.

21 Responses to Firefox 3.5 at the top

  1. What performance trait is FF 3.5 missing? Is it something that they plan to fix in the future?

  2. @Srdjan: You can look at the UA Profiler results to answer any questions about the tests and how browsers perform. In this case, Firefox 3.5 causes downloads to be blocked when a stylesheet is followed by an inline script. All browsers currently fail this test (which is why I include it).

  3. Opera changed it’s default settings from Opera 10.

    opera:config#Always Check Redirect
    opera:config#Always Check Redirect Images

    are both turned off. That makes Opera 10 pass “Cache Resource Redirects” test. I’ve done this test so many times, so I’m quite sure.

    It may be because a lot of people are using old settings…

  4. I just have to ask, how come not a single browser supports the “CSS->JS” test? Is it hard to implement, or does it have a negative effect too? Or has it just not been considered?

  5. I have a feeling that Chrome is still better at handling large amounts of DOM operations than Firefox. I was testing Chrome and Fx3.5 with OpenLayers application (with hundreds of svg features on svg element) and Chromium (that is for GNU+Linux) performs significantly better than Fx3.5. Or may it be the issue with Firefox not compiled with profiling support as it was the case with Fx3.0?

  6. @edvakf: The tests are run by actual users. I doubt that a majority of users changed their settings. Does Opera update the settings with a new install? Would the 10.0 vs. 9.80 issues have an effect?

    @Zirro: Most browsers just started supporting parallel script loading. This is more subtle than that. Hopefully they’ll get it in their next versions.

    @mcv: These tests don’t address DOM performance. I hope to include that in the new tests that will come out this summer.

  7. I just did the test on Opera 10.0 beta after cleaning %APPDATA%\Opera, same result: 6/11

  8. Nice. Does this apply across platforms?

  9. Then why is FF 3.5 still so much slower than Safari on Leopard..?

  10. If you’re behind a proxy, FF3.5 perfs are minored by network.http.max-persistent-connections-per-server and network.http.max-persistent-connections-per-proxy. They are both < 30 so you can’t reach the network.http.max-persistent-connections value (30).

  11. FF 3.5 not super one. I am a webdeveloper and i installed more than 10 addon in FF 3.5, its hanging. So i just reinstalled FF 3.0.3.

  12. I agree with Raja MM, Firefox 3.5 for me is terribly slow and hangs all the time. Far more often and for longer than 3.0.11 ever did with the same extensions. It’s totally unusable and never should’ve been taken out of beta in its current state.

    And to add insult to injury, for the first time now, even file save dialogs become unresponsive while Firefox is hung doing lord knows what. At the very least, under 3.0.11 when I tried to save an image, the file requester was at least responsive to clicking save.

    Terrible terrible version. I’m going to try to downgrade back to 3.0.11 until this 3.5 mess is sorted out. Bummer dude. :(

  13. https://stevesouders.com/ua/report.php?v=det&pb=Minefield+3.6a1pre

    Looks like the most recent nightly builds of Minefield gets all 11/11 tests correctly now.

    Congrats Mozilla on being first to achieve this.

  14. Did you know that Microsoft is stealthy adding some .NET plug-in to Firefox without our knowledge and without possibility to uninstall it?

  15. Now that web fonts are coming, you might consider testing if a browser blocks rendering until fonts have been downloaded (Safari) or choses to give the user at least something to read, and then re-draws the page with the correct font (Firefox). Waiting for a blank screen on a slow connection sure is not a nice experience.

  16. as long as we (www.tamundo.de) can ignore google chrome for optimization…

  17. Steve, did you notice that Firefox 3.5 finally supports DEFER on javascript?

    Only took them nine years :-)

    ps. do you know if webkit supports DEFER ? I have to assume it does.

  18. I have a large SVG application that runs fine on FFX 3.0.x However it is very slow on 3.5. Almost unusable.

    I have three os’s and 5 browsers at my desk and across the board Firefox 3.5 has gone from decent performance to the absolute worst.

    Currently Safari on the Mac is the best, elsewhere the other browsers all perform well running this SVG application.

  19. @Lars and @Rick: Can you devise tests, similar to UA Profiler, that could test web fonts and the SVG issue? If so, I could add them.

    @_ck_: Since webkit supports parallel script loading, it’s less critical to implement DEFER. The way DEFER is defined in HTML 4 and HTML 5 is a little vague and differ slightly, but what WebKit does with parallel script loading could be considered an implementation of DEFER, so whether you add DEFER or not, that’s what WebKit does. Now, none of the browsers do what I really want for defer – download everything else in the page first, then download the deferred script(s). I’ll write a blog post soon about DEFER and two new attributes I propose: ASYNC and POSTONLOAD.

  20. @lars

    Blocking rendering until the fonts are loaded isn’t all bad. On FF I see my page re-rendering every time it loads, it’s really jarring. I may be a perfectionist but the effect is annoying enough to me that I disabled the font and just started using system fonts. In chrome the page may take a few extra ms the first time it loads, but after that I don’t get a jarring shift n every page load.

  21. But Now opera release version opera 10 and inject turbo technology i think now opera can defeat mozilla !!