Multiprocess Firefox 44.b, Electrolysis Optimization
It so happened that Firefox uses a single-processor model, and the reality is that such an approach, taking into account the dynamics of the network and a partial connection with XUL, causes, to put it mildly, a lot of inconvenience. One process must process several threads, which greatly affects the performance of the browser as a whole. Responsiveness of Firefox left much to be desired when the same Google Chrome perfectly rendered heavy pages, which did not affect the performance of other tabs.
This state of affairs forced many to switch to chrome, and who did not want to - was looking for solutions in the form of various kinds of optimizations that, by and large, due to the illogical approach to the distribution of flows or the banal desire to post something on a blog, simply exacerbated the situation. Now one process should not just work, but work very fast! In the end, the developers themselves were well aware that one thing - low memory, another - low speed, which is mainly justified by old bundles with XUL. In fact: we open several tabs in Firefox at once, scroll them and at the time of loading we see that everything is slowing down - there was no talk of any smooth surfing.
Mozilla launched the Electrolysis project to adapt the Gekko engine to multiple processes. What makes Mozilla switch to a similar model for building its browser? First of all, it is performance and responsiveness. The main goal is to reduce jank, which manifests itself during standard operations - loading a particularly large page, typing in a web form or scrolling overloaded with page elements.
I suggest using the new features of the multiprocessor model (unfortunately, they are disabled by default, since they are still in development). All functions are checked by the author himself, and their values are selected for the fastest and most stable operation. The main emphasis is on the performance and responsiveness of Firefox in conditions of aggressive surfing. Memory consumption in comparison with the single-processor mode should grow by about 12% -17%, taking into account the forced use of hardware acceleration, and without it no more than 10%.
Since the project is just developing and is not completely stable, edit in the new profile and then compare the result. I consider it inappropriate to refer to my results because of the dampness of the project. The results can simply vary dramatically.
Warning: Applicable on all versions above 44 on the beta update channel. The fact is that part of the code of new functions simply will not be on Firefox with an update channel other than beta or developer, in order to maintain stability.
To change the update channel, you need to replace the line “realise” with “beta” in the channel-prefs.js file. The file is located in your folder: Firefox / defaults / pref
May not be compatible with some add-ons.
Edit about: config:
Remove the frame around the link during the click:
Protection
Devices
Disable Hello
Firefox Ads & Snippets
Now the quality of work will increase significantly. Good luck.
This state of affairs forced many to switch to chrome, and who did not want to - was looking for solutions in the form of various kinds of optimizations that, by and large, due to the illogical approach to the distribution of flows or the banal desire to post something on a blog, simply exacerbated the situation. Now one process should not just work, but work very fast! In the end, the developers themselves were well aware that one thing - low memory, another - low speed, which is mainly justified by old bundles with XUL. In fact: we open several tabs in Firefox at once, scroll them and at the time of loading we see that everything is slowing down - there was no talk of any smooth surfing.
Mozilla launched the Electrolysis project to adapt the Gekko engine to multiple processes. What makes Mozilla switch to a similar model for building its browser? First of all, it is performance and responsiveness. The main goal is to reduce jank, which manifests itself during standard operations - loading a particularly large page, typing in a web form or scrolling overloaded with page elements.
I suggest using the new features of the multiprocessor model (unfortunately, they are disabled by default, since they are still in development). All functions are checked by the author himself, and their values are selected for the fastest and most stable operation. The main emphasis is on the performance and responsiveness of Firefox in conditions of aggressive surfing. Memory consumption in comparison with the single-processor mode should grow by about 12% -17%, taking into account the forced use of hardware acceleration, and without it no more than 10%.
Since the project is just developing and is not completely stable, edit in the new profile and then compare the result. I consider it inappropriate to refer to my results because of the dampness of the project. The results can simply vary dramatically.
Optimization
Applicable on all versions above 44betaWarning: Applicable on all versions above 44 on the beta update channel. The fact is that part of the code of new functions simply will not be on Firefox with an update channel other than beta or developer, in order to maintain stability.
To change the update channel, you need to replace the line “realise” with “beta” in the channel-prefs.js file. The file is located in your folder: Firefox / defaults / pref
May not be compatible with some add-ons.
Edit about: config:
browser.tabs.remote.autostart browser.tabs.remote.autostart.1 browser.tabs.remote.autostart.2 - true layers.async-pan-zoom.enabled - true dom.ipc.plugins.asyncInit - true (plugin asynchrony) javascript.options.asyncstack; true layers.acceleration.force-enabled = true (disable for problems with the video) network.http.max-connections = 512 network.http.pipelining = true network.http.pipelining.aggressive = true network.http.pipelining.max-optimistic-requests = 32 network.http.pipelining.maxrequests = 96 network.http.pipelining.maxsize = 600000 network.http.pipelining.ssl = true network.http.proxy.pipelining = true browser.cache.use_new_backend - 1 (new caching system) memory.free_dirty_pages - true browser.tabs.animate = false image.cache.timeweight = 100 browser.display.show_image_placeholders - false nglayout.initialpaint.delay; 0 (create integer) browser.display.auto_quality_min_font_size - (-1)
Remove the frame around the link during the click:
browser.display.focus_ring_on_anything (Boolean) = false browser.display.focus_ring_width (Integer) = 0
Protection
network.dns.disableIPv6 - false network.dns.disablePrefetch - true network.predictor.enabled - false network.predictor.cleaned-up - true network.prefetch-next - false browser.send_pings - false network.http.speculative-parallel-limit - 0 (zero) privacy.trackingprotection.enabled; true (bug protection) browser.safebrowsing.enabled; false browser.safebrowsing.malware.enabled; false datareporting.healthreport.service.enabled; false browser.safebrowsing.downloads.remote.enabled; false extensions.blocklist.enabled - false extensions.getAddons.cache.enabled - false browser.chrome.toolbar_tips - false media.video_stats.enabled - false dom.battery.enabled - false media.peerconnection.enabled = false
Devices
dom.gamepad.enabled; false dom.vr.oculus.enabled; false dom.vibrator.enabled
Disable Hello
loop.enabled; false
Firefox Ads & Snippets
browser.newtabpage.directory.ping - leave a blank line browser.newtabpage.directory.source - leave a blank line browser.aboutHomeSnippets.updateUrl - leave a blank line
Now the quality of work will increase significantly. Good luck.