Firefox 54 Multi-Process and Faster - Can It Woo Us Back |
Written by Ian Elliot |
Monday, 19 June 2017 |
Firefox 54, the first version to be multi-process has been released. If you are tempted to think "so what", what is special about it is that Mozilla has achieved a balance between the number of process and RAM usage that makes it both faster and less of a memory hogger than Chrome.
When Firefox was initially developed there was no need for a browser to handle multiple processes as the sorts of things it was required to do could be handled adequately with a single process and multiple threads. Now with the average website nearly 2.5 megabytes (according to the Mozilla blog post announcing "The Best Firefox Ever" and users accustomed to opening as many as they want to, Firefox felt slow and was prone to crash. The Electrolysis (E10S) project to split Firefox into multiple processes started some 8 years ago. One of the problems with moving from single-process architecture was that it would break Firefox Add-Ons, and the transition from traditional Add-Ons to cross-browser WebExtensions has upset many developers, see Firefox Makeover Loses Devs. Mozilla launched the first phase of Electrolysis in August 2016, splitting the running of its user interface and handling web page content into two separate processes, now with Firefox 54 it creates up to 4 separate processes for web page content. So, your first 4 tabs each use those 4 processes, and additional tabs run using threads within those processes. Multiple tabs within a process share the browser engine that already exists in memory, instead of each creating their own. This is a different approach from that of Chrome which uses a separate content process and engine for each website instance.
According to Ryan Pollock Firefox uses 4 content processes because it’s the "Goldilocks" or “just right” number and leaves plenty of memory available for your computer to handle other applications. In tests comparing Firefox’s memory usage with that of other browsers Mozilla found that on Windows 10, Chrome used 1.77 times as much memory as Firefox (64-bit), and 2.44X as Firefox (32-bit); on macOS Chrome used 1.36X as Firefox (64-bit) and on Linus (Ubuntu 16) Chrome used 1.42X as Firefox (64-bit). New features in developer tools in Firefox 54 includes:
At the same time as Firefox 54 was released, Firefox 55 went into beta. It is the first release that has gone from nightly direct to beta, eliminating the aurora channel. According to Callahad, a Mozillian commenting on the Firefox 55 for Developers post on Hacker news, notable changes coming in Firefox 55 are: startup and session restoration are dramatically faster, as we can now defer almost all of the work related to restoring unloaded tabs.
Callahad writes: All of this is leading up to Firefox 57, which will be a major release in November that marks the deprecation of legacy add-on APIs in favor of cross-browser "WebExtensions", an overhauled UI ("Photon"), and the integration of many components from the Servo Parallel Browser Project ("Quantum"). Having tried out Firefox 54 for general use (and being the sort of user who has dozens of open websites plus other applications and process all demanding memory) Firefox does seem to have made the improvements in performance that it claims and I'm happy to welcome it back to my desktop. A few weeks ago in the news item Chrome Declared Winner Janet Swift wrote: having multiple browsers is a good thing and we should be grateful to Mozilla for providing us with one that is independent of the commercial interests of Google, Microsoft and Apple. Having multiple well performing browsers is even better and hopefully Firefox 54 will see more of its former users readopt it and encourage healthy competition to keep Chrome striving for improvement.
More InformationRelated ArticlesFirst Contact - Firefox & Chrome WebRTC Mozilla WebRTC Goes Mainstream To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.
Comments
or email your comment to: comments@i-programmer.info |
Last Updated ( Monday, 19 June 2017 ) |