I've been using Firefox 2 and 3 on Linux (OpenSuse and Ubuntu) for over a year now on different machines with different video adapters, and I can confirm it is definitely the slowest browser I've ever used. I disabled all the unnecessary addons, but still it takes a long time to start FF, it eats memory and works slow with js.
I can't switch, because it would be more inconvenient to use Opera than getting used to slowness of FF. So I hope this is going to be fixed in future.
Just a heads up: Wine is not an emulator, so software running under Wine is infact "native" software. There is no reason why it should be slow, so saying "Wine beats Linux Firefox" should not necessarily imply that Linux Firefox is particularly sluggish.
But it shows that windows firefox is still much faster than linux firefox.
I'm very grateful for this article because this has been a pet peeve of mine for years, too. I sometimes run a win32 firefox inside a vmware window side-by-side to the native linux fox - even the vmware fox wins hands down, talk about humiliation.
The situation has improved a lot with Firefox 3 and the latest Minefields but it's still a night and day difference to windows or OSX. While the UI performance has become nearly bearable (at least it doesn't freeze rock solid for multiple seconds anymore) the javascript performance is still ridiculous. Usability tanks with only a few addons loaded and Firebug has become nearly useless to me recently because it has grown a habit to halt on any pages containing non-trivial javascript with the dreaded "A script on this page made me pee, Abort or Freeze?"-dialog.
Opera is proof that it doesn't have to be that way. It's zippy on every platform, including linux. Just compare the two on anything involving alpha-transparency, e.g. http://www.huddletogether.com/projects/lightbox2/.
Well, perhaps this article will finally draw some attention to the problem. Linux shouldn't to be treated like a third-class citizen on the single most important app. After all many (if not most) developers, the people who actually build the visible portion of our internet, are doing it on linux.
My Firefox is not custom-compiled. However, I am running the profile in a temp filesystem that runs in main memory (nothing gets written to disk till logout or reboot).
On Windows, where setting up a RAM filesystem isn't as practical, I get far worse performance.
I have no idea if this is the difference, but my score is 100 points lower on Windows.
I think this has been reliably chalked up to the fact that windows firefox is built using PGO, linux currently is not. If setting up wine becomes a hassle, you might want to just try grabbing the source and building with PGO on (or grabbing a bin of 3.1)
You're probably right, especially given that these seem to be pure-javascript benchmarks, where Linux shouldn't have any particular disadvantage.
What this misses, and what is the real problem with Firefox on Linux, is rendering performance. XRender, as far as I know, is not quite where it should be. There are two ways to accelerate it, EXA and XAA, and their performance varies greatly by point release of each driver. Throw in compositing, with a different set of interactions across drivers and acceleration architectures, and the whole gamut of misconfigured distributions, and you get an unspeakable mess.
It would be nice if X.org could finish undoing the damage of XFree86's latter days, and get the drivers stable enough that distributors could figure out how to package them properly. Then maybe somebody could do something about the generally unpleasant and slow Linux GUI experience.
I'm a bit of a compiler neophyte but if profile guided optimizations yield such a drastic improvement, why doesn't Mozilla (or my distribution via their package manager) put out binaries that were compiled with PGO?
PGO is pretty new, and it's turned on for the current builds of Firefox 3.1.
I'm guessing it wasn't enabled by Mozilla initially for the usual reasons of complex packaging problems and low manpower for the Linux version.
Distribution packagers generally aren't that knowledgeable about what they package, but that probably isn't what's wrong in the specific case of Firefox, which gets a lot of attention. For Firefox, it's probably the fact that Mozilla has very specific software requirements, and distributors have been burned (http://www.0xdeadbeef.com/weblog/?p=368) in the past by ignoring them. So... distributions generally don't do much to change what they distribute as Firefox.
I tried this and got similar results on my 64-bit Debian system. Conqueror (xulrunner-based) gets 190, Iceweasel scores 181, and the Windows Firefox under Wine gets 198. (These were the best of five runs for each. The standard deviation was pretty high for the Wine Firefox.)
Could be a compiler issue. It will be interesting to see how it does with the JIT compiler enabled, since that should mostly take the system compiler out of the equation.
Firefox appeared at a great time in the browser wars, but it has shown its age. Its UI paradigm (cross-platform XUL) gives it a disadvantage in speed and size for individual platforms, which is unfortunate. It seems like FF 3.1 will show marked improvement, though.
I can't switch, because it would be more inconvenient to use Opera than getting used to slowness of FF. So I hope this is going to be fixed in future.