Mozilla Set to Revive Electrolysis for Firefox Process Threading
From the 'Mobile to Desktop' files:
With all the hype today surrounding the FirefoxOS launch, it's important to note that Mozilla's mobile efforts may well have a positive impact on the desktop browser too.
Phones (Android or FirefoxOS) are resource constrained devices and as such Mozilla developers have done alot of great work to get the memory footprint and overall memory and process utilization to be highly optimized.
Now contrast that with my typical Firefox desktop experience, where on any given day, on any given OS (Linux, Mac or Windows) and Firefox is the top memory hog. I recently spoke with Brendan Eich, CTO of Mozilla and I asked him about that disconnect.
“We have been moving carefully toward a multi-process model in Firefox and I think we have better memory usage at scale than other browser,” Eich said.
Eich explained that FirefoxOS is multi-process, much like Chrome but even moreso. There is a difference in how the core Gecko rendering engine is mapped into processes across the different platforms.
On the desktop, Firefox relies on XUL, which is something that is now set to evolve. The way it will evolve is with the reborn version of the Electrolysis project which Mozilla first attempted in 2010 with Firefox 3.X. The core idea behind Electrolysis is to create a multi-process architecture, which is intended to be more efficient with system resources.
“One of the things that cause us some grief the first time around with Electrolysis was the belief that we could somehow wave a wand and all the add-ons could be replaced with Jetpacks,” Eich said.
Instead of just going after the process isolation model, Mozilla has also focussed on memory usage through the MemShrink project.
Whether or not full process isolation will come to Firefox or not, for me the bottom line is that Firefox on mobile in some way shape or form is helping to inform and push Mozilla into new paradigms that will ultimately improve the desktop too.