A few days ago I compared the JavaScript performance of Internet Explorer 8 beta 1 and Firefox 3 beta 4 and Firefox won that round pretty easy. Previous versions of Internet Explorer and Firefox have a bad history of consuming memory, which annoys me really much. You should not have to close and start your browser several times a day just to free memory, you should be able to start an instance in the morning and have that one running all day without having your memory trash.
Stuart Parmenter, aka Pavlov, has written an article on the improvements of Firefox 3 memory management. Firefox 3 uses a number of nice techniques to reduce the memory usage over time and it looks very promising. My experience with earlier versions of Firefox is that they over time consumes more memory and releases less than Internet Explorer. Pavlov shows with a number of graphs that Firefox 3 beta 4 outruns Internet Explorer 7 and previous versions of Firefox in good memory management.
I did a small test on my own to compare beta 1 of Internet Explorer 8 and beta 4 of Firefox and the results was not that surprising. Take this comparison with a pinch of salt since it not that scientific…
As you can see Firefox (3 beta 4 and 2) outperformed Internet Explorer 8 beta 1 and uses about 50 Mb of memory, in the end, on my machine while IE8 uses twice the amount. What you can’t see in this diagram is that FF3b4 did use momentarily more memory, but I did not write these number down instead I wrote them down after the memory usage had stabilized after a few seconds.
I did the test with fifteen different web sites, including SharePoint sites, Web 2.0 sites, Sunspider and different online magazines. The peek memory usage was reached on www.asp.net.
Firefox 3 is really looking good and is now contending for the number one browser for me (the lack of creating ActiveX objects, which are used in SharePoint to open/edit documents, are now the only show stopper).
As I said in the JavaScript test, Firefox 3 is in beta 4 while Internet Explorer 8 is in the first beta and I hope/guess/beg to see some improvements in this area. As soon as we can get new betas I will try to run the exact same tests again.