During intensive browsing with approximately 50 tabs, I have found that Firefox 3 generally consumes less than half of the memory used by Firefox 220.127.116.11. Firefox 3 is also snappier and more responsive when switching between tabs and performing other operations that typically lag in Firefox 18.104.22.168 when the browser is experiencing heavy load.
Mozilla developer Stuart Parmenter has written an overview of the tactics that were used to reduce Firefox’s memory footprint and also reveals the results of a memory benchmark he performed to compare Firefox 3 with other browsers. The memory benchmark, which uses the Talos framework and was conducted on Windows Vista, replicates real-world usage patterns by automatically cycling pages through browser windows and then closing them. Firefox 3 used less memory than Firefox 2, Internet Explorer, and Opera, and it also freed more memory than the other browsers when pages were closed. Safari 3 and Internet Explorer 8 could not be benchmarked because they crashed during the test.
The results of this experiment, which others have been able to consistently reproduce using the same tools, represent a big victory for Firefox, which has previously faced widespread criticism for its high memory consumption. To achieve that victory, developers approached the problem from many different angles. To reduce memory fragmentation, the developers attempted to minimize the total number of memory allocations, particularly during startup. The developers also adopted FreeBSD’s jemalloc allocator, which helped reduce fragmentation and improve performance.
Another big improvement is the new XPCOM cycle collector, which automatically detects unused objects that are persisting as a result of mutual references. Parmenter notes that the cycle collector hasÂ notable implications for extensions because it will be able to proactively eliminate certain kinds of memory leaks introduced by Firefox extensions that manipulate Firefox’s internals. Caching behavior has also been improved so that it is less wasteful, and decompressed image data is no longer stored.
Mozilla evangelist Christopher Blizzard, who also wrote about the memory improvements, offers readers another insightful take-home message: the small memory footprint in the latest Firefox 3 beta, he says, is proof that Firefox is ready for mobile environments. “What it shows to anyone who looks is that we’re able to hit the kinds of memory and performance requirements that mobile platforms demand,” wrote Blizzard. “Users who use our software on mobile devices can expect web sites that just work, access to add-ons all balanced against the hardware limits imposed by mobile devices. In essence, we can bring that no compromises approach to mobile, just as we’ve done it with the desktop.”
1 Comment to “Firefox 3: Smaller is Better!”
Subscribe to Email Feeds
- Vim: How to Copy Multiple Lines
- Required Packages for Oracle 11gR2 on Red Hat Enterprise Linux 6
- How Replace Space with Newline in Vim
- How to Add or Remove Library Path in RHEL | PinoyTux Weblog on What are Libraries in Linux?
- 博文：《RHEL4 安装yum》 - 苗乡小鱼的博客 on Howto: Install yum On RHEL 4
- Hiding Files Inside An Image in Linux | SACHIN JINDAL'S BLOG on Hide Files Inside An Image File
- Falko on Howto: Install yum On RHEL 4
- Akira on Cebu Pacific Airlines is Evil!