Firefox 3 Performance Gets a Boost
jason writes "Mozilla has been working hard at making Firefox 3 faster than its predecessor, and it looks like they might be succeeding. They've recently added some significant JavaScript performance improvements that beat out all of the competition, including Opera 9.5 Beta. And it comes out to be about ten times faster than Internet Explorer 7! Things are really starting to fall into place for Firefox 3 Beta 4 which should be available in the next week or two."
These benchmarks are definitely lal done on a windows box, because if you compare the performance of JS in Firefox on Linux and Windows it is like night and day... I don't know why JS on Linux needs to be so much worse.
How about testing with a WebKit nightly?
Check out my sci-fi/humor trilogy at PatriotsBooks.
Microsoft's biggest mistake was thinking people wouldn't write complicated apps in Javascript. They supported it, in their usual half broken style, but it created the only widely deployed cross-platform system for running code that Microsoft has ever implemented. Now, with Firefox 3 running so fast javascript might become THE platform. It's hilarious because Javascript started out as such a kludgy platform and now it is becoming a serious contender if only because it's the only cross-platform thing Microsoft ever supported.
I tend to have the opposite experience. When I need to use it, IE7 is quite fast and responsive for me, and it will certainly open tabs as quickly as I can hit Ctrl-T. On the other hand, Firefox (on any computer I've used) occasionally has a bit of a delay when opening new tabs, especially if other pages are rendering in the background, you have a few complex sites (like gmail) open, or you have more than 3-4 tabs open.
There are a bunch of great reasons to use Firefox - adblock, keyword bookmarks, decent standards support, Firebug, etc. But in my experience (especially post-1.5), the responsiveness of the UI is not one of those reasons.
I don't get it. They are doing exactly what I wanted about Firefox in 3.x.
While new features can be nice, I couldn't name a feasible feature that a significant number of people would want and it's not in core Firefox or in an extension already. What I want from Firefox now is to provide the existing features in a secure, stable, fast and memory conserving way, in this order. Heck, I've turned off most of the new features in Firefox 2.x and wished they'd fix some annoying bugs instead. In 3.x the developers did a lot of work to remedy a lot of those bugs and issues, so big big kudos for them!
Cleaner code matters - it results in less bugs and security vulnerabilities, easier to add features and most likely better code.
It takes a man to suffer ignorance and smile
Be yourself no matter what they say
The Webkit nightly builds are significantly faster. I don't have the same machine they've tested on obviously, but for comparison purposes here's the current release vs. the most recent nightly build on my Mac OS X 10.5.2 machine:
Safari 3.0.4: 10758.4ms +/- 0.5%
WebKi r30628: 3390.0ms +/- 0.3%
If the performance gain percentage is comparable on their test machine (big if, granted) the comparable time would be 5675.8 ms, 22% faster than the PGO Firefox build.
JSON, code decompression, and traversing XML are things that a browser does with JavaScript, some more often than others. Even in those cases, I wouldn't be surprised if browsers had parsers that 'helped' the common browser JavaScript tasks with faster native-library interfaces instead of purely native JavaScript interpretation.
Funny, I have been using it for a couple months now (nightlies) and I absolutely love the awesomebar. Just typing "s" gets me slashdot. the various environments I work with can be gotten with "l" (localhost), "d" (the development server), "bug" "sprint" "-1h" "me" (our bug tracker), "qa" (our qa environment), etc.
Best of all, if I visit any site and then want to get back to that site again sometime, all I need to remember is something in the title or url of the page I was at.
Luckily many pages don't need Javascript or at least not a lot of JS to render.
What I find more important are the lockups I get because of limitations to multi-threading in FF, at least under Linux. There are situations where one window locking up means all windows lock up. There are situations where some initial connection to a host being stuck means all of the browser locks up. One can only guess, because FF does not indicate what the problem is -- but more frequently than is funny, I have FF get unresponsive, not re-painting windows anymore and just eating up CPU and memory without reacting until I kill it.
This sucks and this doesn't seem to have changed in FF 3.
I always see these benchmarks and wonder "why does this matter?". The only time I ever see Javascript run too slow or tax my CPU is when it's buggy and then it'll probably throw up all sorts of warnings anyway. This is on any browser I've used and any system.
What matters to me is the imperfect implementation of Flash (it's not really their responsibility but it is their problem) which often eats up 100% CPU from random flash objects or causes firefox to freeze. Another annoyance is Firefox being frankly poor at displaying large HTML files (when you go on websites with insanely large lists for instance). Where as IE and Opera display these as the page is downloaded. Firefox, for me, freezes, much like notepad will when you open a 2meg+ file . Sometimes it'll recover and display the page after a minute or so, sometimes I have to ctrl+alt+delete.
I'm running the Hardy Heron alpha, featuring FF3 Beta 3.
:)
I'm having terrible trouble with it. Bizarre image rendering issues (some render too high in their "frame", leaving a big black space at the bottom and the bottom half of the image rendered in the top half of the "frame", with the top of the image cut off, and other times images from WAY back in my browsing session will show up in odd places, like as a tiled background on another page), GMail hangs when I try to send e-mail every single time I try, and leaving it open too long has proven to be a great way to end up with an unstable mess.
Not refuting your post, just saying to anyone thinking about trying it, don't count on it being a great experience
Actually in Firefox 3/Gecko 1.9, external CSS loads do not block the parser. Woohoo! However, we do block the parser if the page tries to execute script while there are pending CSS loads.
http://blog.pavlov.net/2007/11/10/memory-fragmentation/ provides information about this issue. Supposedly a lot of the memory eating issues people bitch about are caused by heap fragmentation -- memory pages that get allocated to Firefox, then some of the data freed, but not all of the page.
Exactly what I think.
Who cares about Javascript performance when a single script running at any speed can freeze the entire browser?
Or a few Youtube tabs can slow the browser to a halt? (Hint: Firefox REALLY need to delegate Flash rendering to an external process, something I can renice 19. Just like how Konqueror uses nspluginviewer)
No, we're just profiling on browser startup/shutdown right now. I did do a build profiled on the benchmark, and it was pretty fast, but that's probably overkill. Mostly we just want to hit enough common code paths to make things faster. Turns out sunspider perf correlates pretty nicely to overall JS speed, since the benchmark is made up of real world code that people complained was slow.