Overview

Electrolysis functionality hosts, renders, or executes web related content in background child processes which communicate with the "parent" Firefox browser via various ipdl protocols. The two major advantages of this model are security and performance. Security improvements are accomplished through security sandboxing, performance improvements are born out of the fact that multiple processes better leverage available client computing power.

Electrolysis child processes are currently in use for the following tasks within Firefox:

In the future Electrolysis child processes may be used to handle other browser tasks including audio, networking (bug 1322426), PDFium and Pepper Flash (bug 558184).

In Mozilla documentation "Electrolysis" is often shorted as "e10s".

Testing

Nightly/Aurora

If you're on Nightly e10s-multi is enabled by default with 4 content processes. Soon, Firefox 54 Aurora, will also have e10s-multi (4 processes) enabled by default. A user-facing checkbox is available for controlling Electrolysis functionality. Open Preferences and check the "Enable multi-process" checkbox and then restart your browser:

Firefox Beta

If you're currently using Firefox Beta you might be testing e10s already, check about:support and look for a number higher than 0 in the "Multiprocess Windows" entry. If you would like to opt-in to help us test open about:config and toggle browser.tabs.remote.autostart to true. On your next restart, e10s should be active.

Firefox Release

If you're using Firefox 48 or later, you might be using e10s already. Check about:support and look for a number higher than 0 in the "Multiprocess Windows" entry. If you would like to opt-in, open about:config and toggle browser.tabs.remote.autostart to true. On your next restart, e10s should be active.

Force Enable

If you've tried enabling e10s following the instruction above, but your about:support indicates that e10s is disabled (e.g., accessibility, add-ons can trigger this), you can force e10s on for testing purposes. Within about:config create a new boolean pref named browser.tabs.remote.force-enable and set it to true. This is not encouraged, use it at your own risk!

Schedule and Status

View the Multiple Content Process wiki page for more information about release milestones, release criteria, and a gradual roll-out schedule of e10s-multi.

Schedule

The following schedule covers rollout of the single content process feature to release builds up to Firefox 54. Multi process is covered starting in Nightly 54.

[1] qualifying users: users that do not use addons and have not activated accessibility support over 30 days.
[2] full run across the entire beta period
[3] 1% of qualifying users with ramp up to 100% during the release cycle
[4] White listed Add-Ons + Add-Ons created as a WebExtension testing on beta, full cycle
[5] White listed Add-Ons + Add-Ons created as a WebExtension shipping on Release
[6] A11y+ Windows 8 touch screen support enabled, not riding trains
[7] Windows 8 riding trains
[8] E10s Multi Enabled, Not riding trains
[9] A11y Enabled for Windows
[10] E10s multi enabled, riding trains
[*] indicates the goal for the release has yet to be planned

Add-ons Schedule

The following schedule rollout of Electrolysis as it releases specifically to add-ons. Each release of Firefox will add more and more add-ons to the cohort of users who get multi process Firefox.

Staged Roll-Out Plan

Windows XP

Due to stability issues Windows XP is currently not leveraging e10s on release channel. XP and Vista will move out to Extended Support Release (ESR) 45 when 45 merges to release (bug 1303827). As such there are no plans to support e10s for XP/Vista in the future.