Mozilla tests more content processes in Firefox Nightly
Mozilla changed the number of content processes that the Firefox Nightly browser uses recently. The organization increased the number of content processes from four to eight in the browser.
The Firefox web browser uses multiple content processes to improve stability and security. Websites and services that are opened in Firefox are automatically assigned to a content process. Multiple independent sites share content processes in Firefox which is different from Google Chrome which uses one process per site.
Both methods have advantages and disadvantages. The use of fewer content processes reduces the RAM usage that each content process adds to the overhead but it is better for stability, security and privacy if sites are put into individual processes.
Mozilla launched the browser's multi-process architecture in 2016 in Firefox Nightly and enabled multiple content processes in Firefox 54 Stable.
Tip: All supported versions of the Firefox web browser come with a setting to change the number of content processes used by Firefox.
Firefox Nightly users who check the number of content processes may notice that Mozilla bumped the number from four to eight in a recent update.
There are two main ways to check the number of content processes in Firefox:
Option 1:
- Load about:support in the browser's address bar. This opens a troubleshooting page with lots of information about the browser.
- Scroll down until you find Web Content Processes under Application Basics.
- The value lists the number of active content processes followed by the maximum content processes.
Option 2:
- Load about:config in the browser's address bar. This opens the advanced configuration of Firefox.
- Confirm that you are careful if this is your first time opening the page.
- Search for dom.ipc.processCount
- The value that you see listed for the preferences is the maximum number of content processes that Firefox supports.
What is next?
Mozilla plans to run additional test to get more data. Initial measurements showed an increase of about 40 Megabytes of RAM per process based on that.
Depending on how tests go, Mozilla may increase the number of content processes in Firefox Beta and Stable eventually as well or keep the current number of content processes instead.
Firefox will use more RAM if Mozilla goes ahead with the change. Users who do not mind editing config entries may test the change right now in Firefox Stable to see how the content processes increase affects RAM usage on their devices.
I changed the number of content processes in Firefox ever since Mozilla unlocked that option to eight and had a great experience with that value. I have to admit that I did that on a system with plenty of RAM (32 Gigabytes) and that mileage may vary if the computer has 4 Gigabytes or even less.
Mozilla could consider adjusting the number of content processes based on a device's RAM.
Interested users can follow development on Bugzilla@Mozilla.
Update:
Firefox Stable will use up to eight content processes as of Firefox 66 instead of just four content processes.
Now You: How many content processes is ideal in your opinion?
I’m really surprised that Mozilla increased the default for web content processes all the way up to 8. That just seems excessive to me and I’ve been using 6 content processes for a long time and I’m not entirely convinced I’m increasing performance by using 6 except possibly when I have 2-3 dozen tabs open which happens often but not everyday. Maybe because I have a combination of a graphics card along with a 4 core 4 thread cpu it’s helping 4 content processes work better. I’m using 6 because I can, and because I have 16GB of memory, and because I sometimes open a few dozen tabs and mostly it just works exceedingly well. I don’t know why, but 8 just seems a little… ostentatious! Doesn’t it? LoL
8 web content processes for those using a “dual core dual thread” processor seems high to me. But then, chromium browers use a process for each tab and each extension so the process count can be high and “performance” is pretty good on my old laptop with a Core2Duo so who knows, maybe I’m just not looking at it right. According to FF’s data report 66% of FF users are using dual cores, I wish it also showed the thread count but I didn’t see that info. In Nightly, I saw 16% more system memory being used and 12% more graphics memory used when opening 12 tabs with 8 content processes versus using 4 content processes. Needless to say memory use will be higher.
Just so everyone is clear on it, whatever number is used in the preferences you can add 3 to it to get the number of processes that will be seen in the Windows Task Manager, once enough tabs are open (3-8). Add 3 if you have extensions installed, without extensions it will likely be 2 that needs to be added to the total. I’m using 6 “content processes” in FF with addons installed, once I open 5 tabs I’ll see 9 processes in the Windows Task Manager.
But at the same time Mozilla is working on reducing content process overhead so over time it should be possible to unlock a higher number of content processes, see: https://bugzil.la/memshrink-content
Appreciate the info. Looks like they’re making progress.
Posted by Moonchild: “Multi-process, or: the drawbacks nobody ever talks about.” https://forum.palemoon.org/viewtopic.php?f=26&t=17442 “why it is in many respects slower, more dangerous to use, and a lot more resource intensive than using a single multi-threaded process.”
1/1 here.
What a bunch of nonsense. Although coming from Moonchild it does not surprise me. I don’t understand how anyone can swallow what this guy says.
^ Search ‘Hypnotize GIF’ :)
Oh my god it works ! I… will… install… palemoon… now ! Gnnnnh !
Why is it nonsense?
I’m just not seeing multi-process being slower, in any way, when compared to using a single multi-threaded process.
I’ve been using FF since the day v3 was released and Pale Moon since it was released. Actually PM was my primary browser for 6 yrs. For about the last two yrs and especially now, FF always has a faster browser start up, always has faster page load times, faster graphics rendering and it has much much better smoothscroll performance. Pale Moon does have a very small memory footprint but for someone with 16GB of RAM it’s kind of disappointing how low it is, as silly as that sounds. Other than Waterfox having a slower browser startup than Pale Moon… Waterfox, FF, Nighlty, Chrome Beta and Vivaldi all out perform Pale Moon in every way except resource use. That’s what I’m seeing on my hardware, sorry. :)
I’ve set that to the number of my cpu threads (12). It’s currently using 13 out of 12 available processes. Funny.
Multiprocess Windows 2/2 (Enabled by default)
Web Content Processes 13/12
I just recognized that more Contentprocesses or Webrender all does NOTHING to clear the
Stutter and/or Buffer Problem on You Tube Videos,but….i realised why there is a problem at all,^^
There is an Addon for Chrome and Firefox which REALLY fixes that.
Called h264ify. U get it through Chrome’s Webstore or Mozilla’s Addon Page and now, i can
watch 1080p Videos without Buffer or Stutter at all, ^^.
Here are our h264ify reviews for Chrome and Firefox.
https://www.ghacks.net/2015/02/16/problems-playing-youtube-videos-try-h264ify-for-chrome/
https://www.ghacks.net/2016/06/26/improve-youtube-performance-firefox/
Cool, thanks, didn’t knew that,^^
I’ve kept the default 4 content processes after having tested 7 without any noticeable difference, but maybe is this related to my system’s cpu?
I’ve read contradictory comments regarding the system’s cpu impact on the effectiveness of the number of content processes, some stating that it is limited by the cpu’s power. In my case, that of a simple duo-core processor, I linger to know if anything above 4 content processes makes any difference, actually.
Whatever, number of content processes on Firefox means number of handled tabs.
Second wondering : how are those tabs managed? If I have 10 tabs opened those handled by the multiprocess are limited to my content process number, right? But which tabs? The last 4, the first four opened?
In other words I use a browser’s feature with a substantial deal of ignorance.
I understand 3/8 means 3 processes used out of 8 available. On my PC I have 5/4; what does that mean?
Ditto here.
@klaas, 5/4 would mean that your browser handles more content processes than what it’s been told to. Stunning indeed.
@Tom Hawack: hey Tom, long time no hear. Yes, strictly based on the numbers that’s what it means. But what does it mean in practice because logically that would not be possible.
In about:config the dom.ipc.processCount = 4.
The dom.ipc.processCount.webLargeAllocation = 10
Any idea?
@Klaas, maybe related to more than one window, but then you’d have to have 5/8 … if … by the way I still don’t know if the content processes refer to all opened Firefox windows or is it a per-window setting : if I have dom.ipc.processCount = 4 and two Firefox windows opened, is it 4 per window or 4 for all windows?
You see, Klaas, I’m one of those guys who adds questions to questions as an answer :=)
@Tom Hawack: thanks for your reply. I understand you are somewhat in the dark about this processes aspect, as a lot of people must be. Maybe someone else will be able to shed more light on it for us.
I appreciate your thinking process (no pun intended), as always ;-)
As far as I can tell, when Firefox AND a new window are open they both share all the processes up to whatever the maximum is set to, a certain number of tabs will need to be opened to reach that maximum process count. But then, if Firefox is opened with two different profiles, each profile will use its own separate processes, in my case that would be up to 6 web content processes for each profile.
In about:config the “dom.ipc.processCount” is just whatever the user chose to set it to with the default being 4.
As far as “dom.ipc.processCount.webLargeAllocation=10” goes I’m not sure what’s going on with that. A description I found says
“Override default dom.ipc.processCount for some remote content process types.” whatever that means. :)
In Nightly I can actually set “dom.ipc.processCount” as high as 12 but more than that doesn’t change the process count. With 12 web content processes I saw a total of 15 processes in the Windows Task Manager. Anyway… “dom.ipc.processCount.webLargeAllocation” is still a mystery, to me anyway.
@Richard Allen: thanks for your input. I always only have 1 Firefox window open, and usually no more than about 5 tabs, occasionally about 10. So, 5/4 is still a bit of a mystery, but I am not bothered in that I have not observed any unusual behaviour.
@Klaas Vaak
At first, for a minute, I thought you were kidding about the 5/4. Because… that’s just so wrong. :)
I have 2 FF profiles, 2 WF profiles, along with Nightly installed and I’ve never seen that. And it’s been driving me crazy trying to figure out a combination of settings in about:config that would do that in FF. I finally figured it out. I figured out that I hate you! LoL. The 5/4 scenario in FF is not possible but it is in Waterfox. You’re using an inferior product aren’t you? LoL. Just messing with you. ;)
I must have never opened about:support in WF with more than 2 tabs open. If I remember right, at one time e10s was disabled in WF but with a later update it was force enabled by MrAlex which probably explains why you’re seeing the 5/4. I remember before that update ‘my’ WF install said multi-process was “enabled by default”, after the update it said “enabled by user”. Personally, I’m using 3 content processes in WF because I couldn’t see any difference with it set higher and…. WF uses more memory with 4 processes than FF does with 4, it uses about 6-10% more on my desktop with 12 tabs open. Actually, WF uses the same amount of memory with 3 content processes as FF does using 4 content processes, on my desktop. And, I’m seeing 4/3 in about:support if enough tabs are open. That’s just wrong! :)
By “default”, my install of WF will open one tab using 4 content processes in the Windows Task Manager. If you want it to open up using 5 processes like FF does you can change “dom.ipc.processPrelaunch.enabled” to true which is the default in FF. It won’t change the total.
@Richard Allen: you are barking up the wrong tree, so to speak ;-)
Yes I have WF installed, and while it was my primary browser, I demoted it to secondary a few weeks ago after switching back to FF after something like 6 years. I only have 1 profile each for FF and WF.
So, I can confirm that the 5/4 really is on the Firefox about:support page. Today I even uninstalled WF. I also increased the number of processes in FF to 6, but did not see any real change, probably because I usually have a small number of tabs open. So I changed it back to 4.
In any case, I don’t think it is worth spending more time on the 5/4 issue because I have not noticed any unusual behaviour by FF.
@Klaas Vaak
Wow!
I’m totally shocked and would have bet big money on WF being the browser with the 5/4. I can absolutely get WF on my end to show 5/4 but can’t get anything like that in FF and I spent way too much time trying to in my FF test profile. Seriously! I’m not normally a betting person which this proves is a good thing. :)
Once webrender is enabled I’m curious what your result will then be with performance.
Have you tried opening in safe mode from the about:support page, “Restart with Add-ons Disabled…” to see if you still see the 5/4? If you do and see no change I would be surprised if a clean install wasn’t what was needed to fix whatever is wrong. Did you start with a clean install when FF updated to Quantum? Anyway, I’m bummed you’re seeing that in FF and that I couldn’t reproduce it on my end.
@Richard Allen: 1 thing I have not mentioned: I am using FF portable. Normally that should not make a difference, I would have thought, but maybe in this case it does, somehow.
And I started using FF again with version 62.0.2, while versions of 6 years ago were on a different PC.
As for webrender, please excuse my ignorance, but I have no idea what that means, how to enable it, and what the advantage of it is.
@Klaas Vaak
Well, I have zero experience using portable browsers for anything more than a short test drive, I’ve just never been interested. What with the slower performance if using a USB flash drive, and do multiple profiles even work on a portable version of FF? And…what about disk cache? I like the performance benefit from using cache. Since the release of Privacy Possum I’ve been using it because one of the things it does is remove e-tags. E-tags can be used to poison the cache for tracking purposes. So, in my default FF profile I bumped up the cache from 125MB to 225MB and I’ve always reduced the disk cache max entry size to 8192 (8MB) from 51200 (50MB) which usually gives my 2000+ cache entries. With my cache, bandwidth, hardware and config, my page load times are ridiculous. And, I know where everything is with a normal browser install so… I’m good. ;)
Most people probably don’t know much of anything about webrender, it’s still in development. Webrender is a new renderer for Servo (browser engine) and will mostly be used to speed up cpu paint times, frame rates for scrolling and transitions, making everything smoother and faster. The goal is for 60 fps which is kind of a big deal. Right now Nightly v64 has Webrender enabled for some Win10 users that also have a Nvidia graphics card. I’m on Win7 using a Nvidia graphics card but I’m not seeing any improvement if I manually enable it. But, I am still seeing frame rates in the mid to upper 50s in both Nightly and FF, without Webrender. I’m guessing Webrender will be released with FF v65, maybe. I don’t really know if it’s going to be available for everyone.
https://hacks.mozilla.org/2017/10/the-whole-web-at-maximum-fps-how-webrender-gets-rid-of-jank/
https://github.com/servo/webrender/wiki
https://developer.mozilla.org/en-US/docs/Tools/Performance/Frame_rate
@Richard Allen: I use FF portable on my laptop, never use any programs on a USB. I daresay that performance of portable is similar to the installed version, which I base on my experience with a number of other progs I started using the portable version of, then switched to installed.
Having said that, maybe that does not apply to FF, but I am happy with its performance as portable, and at least I don’t have changes made to my registry.
I don’t use FF Nightly because I am not a great tinkerer. I do a bit here and there but nothing spectacular. At the end of the day a browser is just a tool for me that I want to work. I have tweaked a fair amount in about:config, and have 16 extensions installed, incl. Privacy Possum and uBO.
I misspoke:
“By “defaultâ€, my install of WF will open one tab using 4 content processes in the Windows Task Manager”
I shouldn’t have called the “processes” in the Windows Task Manager “content processes”, it’s confusing enough as it is.
In recent versions of FF when you open it with 1 tab, the 5 processes seen in the Windows Task Manager will be:
the main browser process,
a graphics process,
an extension process (if extensions are installed),
and 2 web content processes.
When a 2nd and 3rd tab are opened then more content processes will startup reaching the default of 4 [web] content processes in FF.
Answer:
https://bugzilla.mozilla.org/show_bug.cgi?id=1470280#c49
Default number of content processes should be dependent on the PC resources and the average number of pages opened by the user.
At this moment, if computer has a lot of RAM, then 8 content processes is OK. But some users have only 4 GB RAM or less and they are opening just few pages. In this case default number of processes should be 1-2.
In the future, more processes will be welcome. However, Mozilla needs to make memory overhead for each content process smaller. In some cases this overhead equals even 90 MB (!):
https://bugzilla.mozilla.org/show_bug.cgi?id=1470280#c1
About Fission MemShrink project – introduction:
https://mail.mozilla.org/pipermail/firefox-dev/2018-July/006628.html
https://groups.google.com/forum/#!msg/firefox-dev/PpZBuRaRkuE/LUyMQt9EAgAJ
https://bugzilla.mozilla.org/show_bug.cgi?id=1470280#c49
https://www.reddit.com/r/firefox/comments/9neqpq/nightly_content_process_count_has_increased_to_8/