E_NO_SUCH_BLOG

Programming, philosophy, pedaling.


Mini post: Testing Out Multiprocess Firefox

Jan 20, 2016

Tags: workflow

I’ve been using Firefox as my primary web browser for a little over four years. Most of that time was spent on the stable release branch, with a brief stint on Aurora (now “Developer Edition”) and Nightly builds.

While it’s served me well, there are plenty of things that have given me grief over the years:

Although these are some pretty serious deficiencies, the benefits of using Firefox (customization, plugin ecosystem, community, sync) have kept me loyal. In fact, the only reason I have Chrome installed at all is because Linux Firefox builds do not (yet) support Netflix.

I’ve been following the progress of Electrolysis, Firefox’s multiprocess model, for a while now. It made its way into Aurora all the way back in May 2015, but by that time I had committed to ignoring my irritation and switched back to stable.

That all changed last week, after an overdue crash took out over 80 tabs of work. Within 15 minutes, I found the Aurora PPA and installed firefox-aurora.

Immediate Impressions

The Good

Right off the bat, Aurora started like a perfectly normal Firefox session.

I was able to log into Firefox Sync, which brought (most) of my settings and add-ons in immediately. Some were not yet marked as compatible with the Aurora version, which was quickly remedied by going into about:config and toggling the following to false:

extensions.checkCompatibility.nightly
extensions.checkCompatibility.45.0a

(where 45.0a is your version).

After a quick restart, Aurora looked identical to my previous Firefox installation. Even Flash (ugh) loaded seamlessly.

I spent a few minutes navigating around and testing out different sites, and I was very impressed with the performance improvements brought about by Electrolysis. Tab and window creation felt appreciably faster, and loading multiple content-heavy tabs at once did not freeze the browser chrome.

Overall, the Firefox team has done an excellent job - migrating to Electrolysis without breaking Firefox’s add-on base was a massive undertaking.

The Bad

After a few hours of usage, I did notice some minor problems. Considering the magnitude of Firefox’s internal changes, they’re more than understandable.

Long Term Usage

The same Aurora process has been running constantly for just under five days now. By this point, my workload would have already brought a similar Firefox instance to a crawl. By comparison, Aurora is just as snappy as when I first started it.

Memory usage is also lower, although this is probably just the result of having fewer tabs open for less time - there are plenty of residual memory leaks in the Firefox codebase.

Summary

Overall, moving to the Aurora channel has been a very positive experience. Sync worked perfectly, making the migration process almost completely flawless. My plugin problems were limited to an outdated theme, and even it behaved admirably once compatibility checks were disabled.

The new Firefox multiprocess model is very promising in terms of performance, if my short time using it is any testament. Based on the release schedule, normal users will (hopefully) begin to reap its long-overdue benefits by Firefox 46.

There were a few minor blemishes in my experience, but that’s the nature of using a beta release.

My compliments and congratulations to the Electrolysis team (and all Firefox developers) making the best web browser even better.

- William

Afternotes: