Home > Computing > Firefox 7 tries to slim down and speed up

Firefox 7 tries to slim down and speed up

firefox-7

It seems like just last month we were just writing about a major release of Firefox — oh, wait, we were — but Mozilla has now taken the wraps off its Firefox 7 Web browser. In this release, Mozilla promises Firefox uses significant less memory than its predecessors, and includes a new anonymous Telemetry feature that can optionally send performance and memory data back to Mozilla HQ so the developers can get a better handle on how to improve Mozilla’s performance and memory usage even more.

To many users, these additions to Firefox might seem unbearable geeky and barely meriting a decimal update, let alone a full version number increment. Memory? Usage statistics? Where are the cool new features that make surfing the Web easier? They’re nowhere. But hang on a second: These new capabilities might represent a victory for Mozilla’s much-criticized rapid release methodology, showing how new features can move quickly a mere concepts to real-world code in very short order.

Thanks for the memory

The key new feature in Firefox 7 is completely invisible to users, unless they happen to use memory profiling tools. According to Mozilla, Firefox 7 should use between 20 to 30 percent less memory than previous versions on the same tasks; in some cases, Firefox 7 uses just half the memory of its predecessors. That’s a significant improvement, and comes directly from Mozilla’s MemShrink project. MemShrink looked to improve Firefox’s overall performance — and make it a better neighbor with other applications — by reducing the amount of memory the browser used for many tasks. Although modern operating systems essentially run as if they have unlimited memory (thanks to swapping to and from disk storage), the amount of a physical memory in a machine (whether 2GB, 4GB, or 16 GB or more) still makes a huge impact on performance. Basically, more memory is always better, and the less memory apps use, the more is available for other apps.

In the real world, Firefox could consume a ton of memory, particularly once users get into multiple windows, open multiple tabs, and stay perpetually signed into script- and memory-intensive services like Facebook and Google Docs. Profiling memory usage last week in Firefox 6, I had eight tabs open in two windows: One tab was script-intensive, but none used any plug-ins or media, and Firefox was occupying 745 MB of RAM on my system. Using a nearly-final version of Firefox 7 with the same windows and tabs, that dropped to 502 MB. (I’d test with the final version of Firefox 7, but that machine’s motherboard has gone to the great warranty service center in the sky, and I’m now stuck on a machine Mozilla abandoned ages ago — last March — with Firefox 4.) In any case, that meant Firefox 7 was using roughly a third less memory than Firefox 6 on my system, and means the system has a bit more room to work with real memory before it’s forced to consider swapping material from RAM to hard disk.

Those memory improvements will mostly aid Firefox power users,and power users tend to be the types to gravitate towards Firefox anyway. Improved memory use will show its benefits primarily for users who use lots of tabs (particularly with lots of images), who view large amounts of data in Web pages, who keep Firefox open for long periods, and who use Firefox alongside other memory-intensive apps. Mozilla also specifically called out performance improvements for using Firefox 7 on Windows, although it’s worth noting the MemShrink initiative was started in part to slim Firefox down for mobile devices.

Telemetry

Performance and memory issues are notoriously tough to solve in the real world, particularly with general-purpose applications like Web browsers. Almost everyone uses the Web differently, and Firefox users in particular are prone to running combinations of add-ons and services that might never occur to Mozilla’s developers. To help Mozilla get a handle on how Firefox 7 performs, the application includes a opt-in Telemetry feature, whereby users can choose to send anonymized performance and memory data back to Mozilla for analysis. Unlike crash reports, which often include UUIDs and other unique information, Mozilla says Telemetry never discloses personally identifiable information, and (if enabled) turns itself off if a user enters Firefox’s private browsing mode.

But is there anything else?

Can everyday Web users look forward to anything new in Firefox 7? The answer is “not much.” Mozilla has rolled in a new version of its hardware-accelerated HTML5 Canvas element to tap into GPU acceleration when playing HTML5 video, animations, and games in Firefox —examples would be the HTML5 version of Angry Birds (initially built for Chrome) or  Runfield. Otherwise, the only meaningful addition (besides bug fixes) is support for the W3C navigation timing spec, which only matters to Web developers.

One downside of the new release is Firefox add-ons may need to be updated: Mozilla claims 99 percent of add-ons it tested that work with Firefox 6 will work with Firefox 7… but developers can’t test binary components in add-ons, and they only test add-ons available via their own Mozilla add-ons site (AMO). Mozilla admits that fully 75 percent of Firefox out there in the wild are not distributed through AMO, and therefore aren’t tested for compatibility. Firefox 8 may help out a bit, but that’s not due for weeks yet.

Is Firefox’s rapid release schedule working?

Firefox 7 just hit the streets, and Firefox 8 is scheduled to move to release on November 8. On the same day, Firefox 9 will enter beta. The browsers have automatic updating mechanisms, but the frequent release schedule may be hard for many everyday Web users to keep up with, particularly when the new “major versions” don’t seem to offer much in the way of new features. They may be marked as major releases, but they feel like bug fixes or minor updates, and that means many users will skip them or opt out because they don’t want to be bothered.

The rapid release schedule also stymies many enterprise, education, and corporate users, who may not even be able to get a major release of Firefox certified for deployment on their systems before the next “major” release comes along. Mozilla has basically said it doesn’t care — it believes in developing for individuals, not organizations — but Mozilla has recently proposed a slower release schedule for enterprises, with a major release coming every 30 weeks instead of every six weeks or so, with enterprises getting an additional 12 weeks of support when a vew version comes out, meaning each major release would have a lifetime of 42 weeks. During that time, Mozilla would only issue security updates.

However, Mozilla’s rapid release schedule might now be delivering real benefits. Sure, MemShrink might be very geeky — and lack shiny buttons or dancing icons — but it represents a substantial under-the-hood revision to Firefox’s core code, data structures, and behaviors. Significantly, the MemShrink effort only formally got started in June of this year, and it’s rolling out to millions of Firefox users now, barely twelve weeks later. Firefox head Mitchell Baker has noted that the old release schedule had meant major features and improvements had to wait as long as a year before reaching Web users; if Mozilla can conceive and deliver major real-world improvements to Firefox in less than three months, the rapid release schedule might be delivering real-world benefits to users… even if it risks continuing to confuse and annoy them.