Tomorrow In the next few days, Firefox 48 Beta becomes available. If all goes well in our beta testing, we’re about 6 weeks away from shipping the first phase of E10S to Firefox release users with the launch of Firefox 48 on August 2nd.
E10S is short for “Electrolysis”. Similar to how chemists can use the technique called electrolysis to split water into hydrogen and oxygen, we’re using project Electrolysis to split Firefox into a UI process and a content process. Splitting UI from content means that when a web page is devouring your computer’s processor, your tabs and buttons and menus won’t lock up too.
E10S has been enabled for some portion of our Beta audience since December of 2015 and we’ve had it enabled for half of our Beta population for the last 6 weeks. The team has been comparing the half with E10S to the half without for things like stability, responsiveness, memory usage, and more. And so far, so good. We’ve met all of our release criteria and assuming nothing shows up in Beta 48, we should be good to go.
(When we hit release in about six weeks, not all of our Firefox 48 users will get E10S. The teams have been working really hard but we’ve still got some compatibility and other work to do to make E10S ready for everyone. The groups that will have to wait a bit for E10S account for about half of our release users and include Windows XP users, users with screen readers, RTL users, and the largest group, extension users.)
This is a huge change for Firefox, the largest we’ve ever shipped. But don’t worry. The Electrolysis team at Mozilla has a release roll-out plan that ensures we’re going slowly, measuring as we go and that we can throttle up as well as down depending on what we see.
Here’s what that looks like. When we launch Firefox 48, approximately 1% of eligible Firefox users will get updated to E10S immediately. The 1% of release users should get us up to a population similar to what we have in Beta so we’ll be able compare the two. About ten days after launch, we’ll get another round of feedback and analysis related to the release users with and without E10S. Assuming all is well, we’ll turn the knobs so that the rest of the eligible Firefox users get updated to E10S over the following weeks. If we run into issues, we can slow the roll-out, pause it, or even disable E10S for those who got it. We have all the knobs.
As noted earlier, this is just the first phase. Next up we’ll be working to get E10S to the cohorts not eligible in Firefox 48. We want 100% of our release users to benefit from this massive improvement. After that, we’ll be working on support for multiple content processes. With that foundation in place, the next projects are sandboxing for security, and isolating extensions into their own processes.
It’s an exciting time at Mozilla. E10S is the largest change we’ve ever made to Firefox and we hope you’ll help us get through this with as few surprises as possible. To help out, get on Beta and let us know what you find.
update: There is some confusion about what’s new here. I think I can clear that up. E10S has been in beta for some time. That’s not new. It was there for half of our beta users for the entire previous 6-weeks cycle. What’s new here is that we’ve just recently met all of our release criteria and we think we can take the feature from beta to release in the next 6 weeks. Now we’re down to one final cycle — assuming we don’t encounter any surprises. That’s where you all come in. Please help us test this upcoming Firefox 48 beta well so we have confidence when we get to the end of the beta cycle that E10S works well for everyone that gets it. Thanks.