Slashdot Mirror


Firefox Finally Confirms 'Largest Change Ever' Featuring Electrolysis In v48 (zdnet.com)

Firefox is finally getting multi-process support. Mozilla has announced that Electrolysis (e10s) will be available to users starting Firefox 48. The foundation finds it the most significant Firefox change since the browser's inception. From a ZDNet report: With Electrolysis, Firefox can use child processes for content (tabs), media playback and legacy plug-ins. This is some way short of Google Chrome, which uses a different process for each tab. However, the result is that Chrome is a huge resource hog: Chrome uses roughly twice as much memory as Firefox on Windows and Linux. Eric Rahm has run some browser tests with Electrolysis, and says: "Overall we see a 10-20 percent increase in memory usage for the 1 content process case (which is what we plan on shipping initially). This seems like a fair trade-off for potential security and performance benefits." With 8 content processes, Rahm says: "we see roughly a doubling of memory usage on the TabsOpenSettled measurement. It's a bit worse on Windows, a bit better on OS X, but it's not 8 times worse."The aforementioned feature will be available in Firefox 48 Beta shortly.

28 of 187 comments (clear)

  1. Honestly? by halivar · · Score: 2, Insightful

    Performance is the least of their problems. Security, first.

    1. Re: Honestly? by Entrope · · Score: 4, Interesting

      Optimization isn't premature if it's totally awesome optimalization, am I right? I'm pretty sure some old Unix guy say "First, make it work, then make it work awesome, then make it work right."

    2. Re:Honestly? by LichtSpektren · · Score: 5, Informative

      Sandboxing all of FF's plugins is good security practice.

      If I understand correctly, Mozilla is re-writing their layout engine in Rust, which should be considerably more secure than Blink (Chrome's engine). But that's still in alpha stage.

    3. Re: Honestly? by LichtSpektren · · Score: 5, Insightful

      Web browsers have to be colossal in size and features because nowadays many people do all of their work, all of their shopping, and interact with all of their multimedia through it. For better or worse, Firefox/Chrome/Safari/IE/Edge are practically entire operating systems, lacking only a kernel.

      If you'd like a browser that "does one thing and does it well", you might want to stick to Lynx. I think most people want more than that though. And if you want more than that, the modularity and security features of the aforementioned browsers are invaluable.

    4. Re: Honestly? by Entrope · · Score: 2

      The concept of premature optimization only assumes that software will eventually achieve representative functionality. Which it does long before anyone decides that it is "done".

      Deciding what level of functionality is representative enough to start optimizing is hard. That's why the rules of optimization are:

      1. Don't.
      2. Don't Yet (for experts only).

    5. Re: Honestly? by Anonymous Coward · · Score: 2, Insightful

      Has the security of Rust been independently audited or researched? I hear many claims about Rust, but I never see any real evidence. Just because those who created it say it's secure it doesn't mean that it actually is.

    6. Re:Honestly? by Anonymous Coward · · Score: 2, Funny

      Good thing that "chrome", "safari", "windows" and "git" do not fall into that trap.

    7. Re:Honestly? by buchner.johannes · · Score: 3, Informative

      There are over 2,400 open bugs right now, and that doesn't include the many thousands that they've supposedly fixed in the past.

      Chromium has 51353 open issues, Firefox has >10000, webkit has >10000. So according to your logic, Rust is the best!

      --
      NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
    8. Re:Honestly? by NotInHere · · Score: 2

      Rust can be seen as some kind of imperative Haskell:

      * Like Haskell, Rust has very strong typing, and auto-deriving of types.
      * Guards and case in Haskell becomes match in Rust, with all the pattern matching you can do in Haskell
      * The Result and Option types in Rust are essentially the same as the Either and Maybe types in Haskell

      and many other common things.

  2. This was an interesting comment on Asa's blog by Lennie · · Score: 4, Interesting

    "I am using Firefox Dev Edition with Electrolysis enabled from many months and it looks almost stable now. I dont know if anyone noticed this but the CPU and memory usage reduced drastically with increasing number of tabs (I have about 40 open tabs) with e10 enabled. And with this, Firefox uses lot less resources than Chrome on my system with multiple tabs."

    https://asadotzler.com/2016/06...

    --
    New things are always on the horizon
  3. It breaks extensions by Lawrence_Bird · · Score: 2

    been dealing with this as a nightly user and have turned off E10s - Though NoScript mostly works now, I have other extensions that have stopped. Unfortunately, at least one of them does not look to be too actively supported anymore. It is also not certain that E10s provides much more than easier recovery, the performance figures I have heard are not that great though I personally did not notice any slow down (or speed up).

    1. Re:It breaks extensions by jlv · · Score: 2

      As I said in the last thread on FireFox... extensions are the only things that keep me using it. If they break extensions, I'll have no reason left to avoid switching.

      (Hint to Mozilla: don't break extensions!)

      If I could only reliably stop Chrome extensions from auto-updating, I'd have made the switch already. Basically, a dumb forced feature on Google's part is what is helping to keep me using FireFox.

  4. Electrolysis? by methano · · Score: 3, Interesting

    Where did they get a name like "Electrolysis"? As a chemist, I tend to think of electrolysis meaning something a lot different that the FF folks do. And as a layman I tend to think of electrolysis as a technique for removing unwanted hair. So they name some code after a hair removal technique. I guess the long list of "names for things" is finally getting exhausted.

    1. Re:Electrolysis? by zero_out · · Score: 2

      I'm guessing it has something to do with splitting water into oxygen and hydrogen, and splitting a single application process into multiple processes.

    2. Re:Electrolysis? by James+Carnley · · Score: 3, Insightful

      This is a huge multi-year project that almost rewrites whole portions of the browser. It's not just an entry on a changelog. It's a major undertaking that people have been discussing using a codename for a very long time. You need codenames because saying "project to split tabs into separate processes" over and over gets old. The name Electrolysis makes sense because that's essentially what they are doing: splitting one monolithic thing into smaller parts.

  5. Could spell the end of FF if there are problems. by Anonymous Coward · · Score: 5, Insightful

    What worries me the most is how this feature could very well spell the end of Firefox if users run into problems with it.

    The latest web browser market share stats show Firefox at only about 6% to 7% of the market. That puts Firefox, across all platforms both mobile and desktop, well below Chrome, and around where individual versions of other browsers like Safari for iOS and IE are at.

    So Firefox has no leeway at this time. Mozilla really can't afford to lose any more Firefox users than they've already lost.

    Electrolysis hasn't exactly been a smooth project. It goes back many years, and my understanding is that they actually halted/delayed the project at one point, before restarting it. Its release has been pushed back again and again and again.

    There have been cases in the past where Firefox changes have not gone well, and this has resulted in even more users leaving than who would've likely left had there not been problems.

    For example, around the Firefox 4 era, when they switched to their new versioning scheme and rapid releases, many extensions were broken with each new release. This caused untold problems for Firefox users. Many of them moved to Chrome or other browsers at this point. By the time the Firefox devs got their acts together, it was too late; these users would never again use Firefox.

    We saw something similar happen with Australis. Despite widespread dislike from the Firefox community at the time, Australis was pushed on all Firefox users. This was a painful transition for many. In some sense it proved to many that Firefox as they knew it was long dead; Firefox was now just a bad imitation of Chrome. Many Firefox users, when faced with the choice of using a poor imitation of Chrome (i.e. Firefox) or Chrome itself, just chose the lesser of two evils and used Chrome directly. Even if its UI is shitty, at least it's faster than Firefox.

    If Electrolysis ends up breaking extensions for a lot of Firefox users, or if it ends up slowing down Firefox even more for them, I think we may see yet another mass exodus away from Firefox to Chrome and other browsers. That could very well take Firefox from being irrelevant to being completely irrelevant. Nobody will care about Firefox when it has only 2% or even 3% of the browser market. Web developers won't test with it, and sites won't work with it. Search engine providers won't sign deals with Mozilla if Firefox has few users.

    The only thing that might be more devastating would be the extension signing changes that the Firefox developers have talked about.

    I really don't want Firefox to become irrelevant, but I'm getting an awful feeling in my gut that that's exactly what we'll see when the Electrolysis rollout ends up being a major disaster for a lot of Firefox users. This could very well be what finally pushes them over the edge and to other browsers, meaning that Firefox would become irrelevant.

  6. Whatever. by sootman · · Score: 4, Insightful

    You can write the rendering engine in BASIC for all I care, just quit fucking with the UI.

    --
    Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
  7. Re:Could spell the end of FF if there are problems by Anonymous Coward · · Score: 2, Insightful

    I wonder why Mozilla has search a hard time understanding that the main draw of their browser is its extensions. Making sure they remain stable should be the #1 priority...at least, it should be higher up than introducing 'features' no one cares about. If Chromium had decent noscript and pentadactyl equivalents, I'd switch and never look back.

  8. Re:Copy Pasta by Anonymous Coward · · Score: 2, Insightful

    Exactly. Firefox's 'loss' of market share is due to the increased usage of Android. Going by the actual numbers, people aren't flocking away from Firefox. If you buy a phone and start using it twice as often as you use Firefox on your desktop, Firefox doesn't suddenly lose two-thirds of its users. Their percentage of all web hits drops by two-thirds, but their user count remains the same. Assuming you're the only Firefox user in existence.

  9. add-on developer here by rsilvergun · · Score: 5, Interesting

    This is going to require a full rewrite for me and just about everybody. If they are going to do this I wish they'd at least wait until they had compatibility with Chrome so I could leverage the work I'm doing there. Rewriting an app for a mulitthreaded environment is a nightmare of interlocking callbacks...

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
  10. Re:The processes are cool again? by MobyDisk · · Score: 2

    These processes ARE using multi-threading. Multi-process has not replaced multi-threading.

  11. Re:FF vs Chrome by shaitand · · Score: 2

    For anyone in tech (millenial or otherwise) a browser is pretty essential. I have at least 50 tabs open right now from a fresh browser this am. Only about 5 are for something other than work and 3 of them are open to different articles in my home wiki.

    Even if it's just keeping that thing I already searched out earlier open for reference in case I need to go back to it. Many of them will stay open right up till a forced corporate reboot. Human memory is far more valuable than computer memory. Why try to learn or memorize formats, syntax, command options, file locations, etc when the web stores all that information?

    Almost all the apps I work with are web based now. Aside from video/graphics heavy tasks, why do any kind of heavy lifting on your client? Slap a web interface on a server that will do the lifting and access it via a browser.

  12. Re:FF vs Chrome by EndlessNameless · · Score: 2

    Why does a damn 'web browser' require 2GB of memory?

    If your browser uses a separate process for each tab, then you'll have 18 instances of process overhead when 18 tabs are open.

    In Chrome, the rendering engine, plugins, and extensions each run in their own process as well. Some plugins are quite demanding.

    In addition, there must be a fairly comprehensive framework for interprocess communication so plugins can function.

    You trade significant RAM overhead and low/moderate CPU overhead for some security and reliability. The ability to have individual tabs/plugins hang or crash without affecting the others is probably the most practical benefit, as there always seems to be some web site with absolutely retarded scripting that ends up eating an entire CPU core.

    --

    ---
    According to the latest ruleset, this post should be modded as Vorpal Flamebait +5.
  13. It doesn't help that much, a little bit. by AbRASiON · · Score: 3, Interesting

    Ultra extreme loony browser guy here again...

    Switched to nightlies about 3 months ago to try and get more performance, you'd be extremely surprised just how stable the experience has been.
    Current tabs open : 399

    It still has issues switching from tab to tab to tab and once you have a certain amount open, opening more isn't ideal either, delays can exceed a second or two, super bad times, up to 10 seconds...
    I guess about once a week I do see a crashed tab not take out the browser, so that's good but I'm still not happy with the perf to be honest. (for some reason, the 48 nightlies felt faster than 49, not sure why)

    Sometimes in really bad moments it can take over a second to switch tabs, scrolling is slow, clicking in boxes is slow, the whole thing lags up. If you're going to go multi-core at least give me 1 full core for my current tab, entirely independent of the others, furthermore, the 2 tabs directly to my left and right of my position should be prioritised too.
    (16gb, quad core machine here)

    1. Re:It doesn't help that much, a little bit. by chefmonkey · · Score: 3, Interesting

      If you're going to go multi-core at least give me 1 full core for my current tab...

      A lot of the pain you're feeling is probably due to on-thread content rendering. Since you're already living on the bleeding edge by running nightly, you might as well try turning on async pan/zoom, which renders content on a separate thread. This has some dramatic responsivity improvements. Go into "about:config" and set the pref "apz.drag.enabled" to "true."

    2. Re:It doesn't help that much, a little bit. by chefmonkey · · Score: 2

      Oh, and I forgot to mention -- I run with hundreds of tabs open from time to time as well, and it's usually just one or two bad apples that grind things to a halt. Since you're on 47 or later, you can go to about:performance and see which pages are chewing up CPU time. Closing the top CPU-hogging tabs makes everything work *much* better.

  14. Re:Really? by LinuxIsGarbage · · Score: 2

    This is a silly justification. The first problem is you listed Chromebooks, and this is EXACTLY what Chrome does. The RAM usage is still low for a rational number of tabs, a few hundred meg, and nobody is going to have 100 tabs open on a phone.

    I noticed on Android and 32bit (low RAM) Windows systems Chrome seems to kill old background tabs. They will reload if selected, but they are little more than a bookmark.

    In any case I rather use Chrome on these systems than Firefox on any system, as Firefox will bloat up to 1.5-1.9GB RAM usage, even when all tabs except about:blank are closed. Open one more page and everything will crash.