Firefox 13 Gets a Triple Shot of Speed Through Mozilla's 'Project Snappy'
When Mozilla launched the beta version of Firefox 13 late last month, it was already clear that faster speeds were on the way, thanks to the fact that the SPDY protocol had been enabled by default.
Now it looks as though even more speed is in the works for the popular browser, thanks to an effort called “Project Snappy,” which Mozilla kicked off late last year.
“Back in the fall of 2011, we took a targeted look at Firefox responsiveness issues,” wrote Firefox Engineering Program Manager Lawrence Mandel in a blog post on Friday. “We identified a number of short term projects that together could achieve significant responsiveness improvements in day-to-day Firefox usage.”
Some of the first improvements from the project began to surface in Firefox 11, but it's Firefox 13 in which they're really beginning to be felt, Mandel said.
Specifically, Firefox 13 will deliver speed improvements thanks to tweaks in three key areas, he explained.
1. Tabs on Demand
This is actually a feature that Mozilla mentioned explicitly when it launched the Firefox 13 beta, but Mandel last week offered further explanation.
“In Firefox 12, all tabs are loaded on startup,” he wrote. “For windows with many tabs this may cause a delay before you can interact with Firefox, as each tab must load its content.”
Now, aiming to reduce startup time for Firefox windows with many tabs, the browser loads only the active tab, deferring the loading of the others until they are selected.
“This results in Firefox starting faster as tabs-on-demand reduces processing requirements, network usage, and memory consumption,” Mandel said.
2. A Better Cycle Collector
Another change appearing in Firefox 13 is an improved mechanism for reducing Firefox's memory usage.
“As you interact with the browser and Web content, memory is allocated as needed,” Mandel explained. “The Firefox cycle collector works to automatically free some of this memory when it is no longer needed.”
Starting with Firefox 13, the cycle collector is more efficient and spends less time examining memory that's still in use, he said, with the result that there are fewer pauses during browsing.
3. A Faster 'First Paint'
Finally, as part of Project Snappy, Mozilla developers also identified several unoptimized routines in the code that executes before “first paint,” or the first appearance of the Firefox interface on the user's screen. With Firefox 13, file calls, audio sessions, drag and drop, and overall IO are all among the routines that have now been optimized for faster performance.
Several other areas of Firefox 13 have been improved as well, Mandel noted, including IO contention, font enumeration, and livemark overhead. Future changes will touch on memory usage, shutdown time, network cache and connections, menus, and graphics, he said.
Bottom line? Starting with Firefox 13--the final version of which is due on June 5--users of the free and open source browser should notice a faster experience.