Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Firefox The Internet

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

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.
This discussion has been archived. No new comments can be posted.

Firefox Finally Confirms 'Largest Change Ever' Featuring Electrolysis In v48

Comments Filter:
  • Honestly? (Score:2, Insightful)

    by halivar ( 535827 )

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

    • Re: Honestly? (Score:5, Interesting)

      by Entrope ( 68843 ) on Wednesday June 08, 2016 @11:47AM (#52275563) Homepage

      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."

    • Re:Honestly? (Score:5, Informative)

      by LichtSpektren ( 4201985 ) on Wednesday June 08, 2016 @11:48AM (#52275583)
      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.
      • Re: Honestly? (Score:2, Insightful)

        by Anonymous Coward

        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.

        • by HiThere ( 15173 )

          I don't know whether it *has* been independently audited, but it could be if anyone wanted to bother. That's the first step. Then you need to give someone independent a reason to bother.

          • Not especially likely for the same reason "absence of evidence to the contrary" regarding it's security isn't much of a metric. Rust is a niche at this point.
      • Re: (Score:1, Interesting)

        by Anonymous Coward

        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.

        I keep seeing comments like these, and they're clearly from people who have never tried Rust nor Servo.

        Sorry, guys, but they aren't what they think you are! I encourage you to try them out for yourselves to see what I mean. Don't just rely on hype you read somewhere.

        Rust's one implementation is riddled with bugs. See for youself! [github.com]

        • Mozilla signed their own execution order when they decided to play the popular game of Lets Try to be Like Google!

          You know who's the best at making software similar to Google software? Google is. And that isn't an accomplishment to be proud of.

          Even my beloved Opera has caught the Google Ghey. I think my RJ-45 plug needs a condom.
        • Re:Honestly? (Score:4, Informative)

          by buchner.johannes ( 1139593 ) on Wednesday June 08, 2016 @04:06PM (#52277327) Homepage Journal

          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!

        • Firefox is losing users left and right.

          I stopped using FireFox regularly when Mozilla's attempts to make it more user friendly also took away much of the configuration controls I used.

          Making something dumber is not the right way to make something more user friendly. It's lazy and not actually more friendly - not even to "the average, browse-the-web-and-send-messages/pictures person".

      • Tabs and plugins run in the same process: plugin-container.exe
      • Rust is a memory-safe language, meaning it is less vulnerable than C to certain types of bugs. That's great.

        PHP is also memory-safe, as are most languages. Does that mean that writing software in PHP makes it secure? Quite obviously not, especially older versions of PHP. I certainly hope the current Mozilla developers don't have any false sense of security from using Rust.

        Rust has a few tools which help mitigate specific types of vulnerabilities, often turning information leak bugs into denial of service i

    • by Anonymous Coward on Wednesday June 08, 2016 @12:09PM (#52275759)

      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 [caniuse.com] 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.

      • Re: (Score:2, Insightful)

        by Anonymous Coward

        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.

        • by Lehk228 ( 705449 )
          ever since mozilla abandoned it's goal of technological progress in favor of the promotion of social justice
    • Performance is the least of their problems. Security, first.

      No, security second. The first priority should have been to think of a good name. "Electrolysis" already has a different meaning, which will cause confusion and make it difficult for people to Google for information, since nearly all the hits will be for the original meaning. There are billions of potential names, so why did they have to pick one of the few already being used? Even "Browsy McBrowseFace" would have been better than this.

      • Re: (Score:2, Funny)

        by Anonymous Coward
        Good thing that "chrome", "safari", "windows" and "git" do not fall into that trap.
      • Does a modest change in process management in the browser even need a snazzy name? Seriously, it's an item on a changelog... only notable because I dream it will somehow lead to an end to how plugins impact the browser.
      • It's called 'e10s' to the user, because replacing t1e l5s i0n w5s w2h n5s makes so much sense.
    • by Matheus ( 586080 )

      I'm all for the security benefit of this.

      I'm also all for Firefox not being a bloated steaming pile that crashes constantly. It is, by far, the worst performing browser I use on the daily and that's *including IE11 which should say a lot. I seem to have seen the performance go completely away when I switched to the 64bit port so maybe my experience is specific to Windows x64 but honestly that's not a good excuse since that's no longer a unicorn environment. Both Chrome and IE have plenty of their own probl

      • That and Chrome spies on you and it's UI sucks.
      • by RonVNX ( 55322 )

        Haven't had Firefox crash in years. Over 500 tabs open, dozens of extensions. Whatever your problem is, it's not Firefox. If you think Firefox is bloated you're not paying attention to your Chrome.

    • This would make a big performance improvement on Windows. It should make no difference on Linux or OSX.
    • by AmiMoJo ( 196126 )

      These changes do actually improve security. Firstly, by separating things out into threads with extremely limited permissions it makes it harder to do anything malicious by compromising them. At the moment everything runs in the main process, with the same permissions.

      Secondly, they are cleaning up the add-on API to make it more secure. That will break some add-ons, but at least bugs in them won't be easily exploitable.

    • Performance is by FAR their biggest problem, you haven't even outlined what security issues you have. You've just thrown a dead cat on the table and walked away. Ugh

  • Really? (Score:2, Interesting)

    Gosh... I've got 16Gb of RAM on my PC 6 of which is never used.

    Please use my memory and give me more thread... please.

    Firefox is such a performance dog and they are trying to sell small footprint?

    Sorry- I think Firefox is a hideous browser.

    • by Anonymous Coward

      not going to happen, because: Cell Phones, Chromebooks, Firefoxbooks only have 2GB-4GB of ram

      • not going to happen, because: Cell Phones, Chromebooks, Firefoxbooks only have 2GB-4GB of ram

        Not relevant on my PC or my Mac. I'm typing this on a PC with 24GB of RAM and my Mac at home has 16GB. As long as it doesn't consume memory needed by other applications I don't mind at all if it uses lots of RAM to improve performance. If the machine has less RAM then adjust accordingly.

    • It's more ridiculous than that.

      I use Chrome because it actually uses *less* RAM than Firefox. This is hard to count, because a lot of the RSS is shared memory: the Chrome executable and all loaded libraries are read-only and mapped to the same physical RAM across processes; any writable library data is initially mapped the same way, but gets copied when written (it's read-only but exposed read-write to the program; on protection fault writing, the kernel copies the page to another area of physical RAM,

      • by Anonymous Coward

        Hmmm... Should I trust real data or your unsubstantiated, purely imaginary, beliefs? Sorry, but your "investigation" concludes the exact opposite of what every one else has confirmed repeatedly. I suspect that's because you're not telling the truth, and instead want to spread FUD. You're like an anti-vaccine nut.

        It's pretty well-established that when it comes to memory use and performance, Firefox beats Chrome hands-down. Faster rendering, better JS performance, lower memory and CPU use, pick a metric.

        • I'm a FF fan but Chrome still executes much js faster than FF. As for memory usage, it depends, the first day FF is lighter but it leaks like crazy.

          If you are a typical browser user and have dozens of tabs opened and closed on a daily basis while leaving your browser open after just a couple days the memory consumption will be ridiculous.
          • by Barny ( 103770 )

            I rely on the 'save tabs on exit' thing to be able to keep a lot open, but not actually loaded. For a laugh, I clicked on all my tabs and watched memory usage climb to 2.8GB and CPU sitting at about 20% used, constantly.

      • The only effective way to count RAM usage in this context is to measure RAM, kill the process tree, and measure RAM again.

        Or you could use the built in browser memory reporting tools that show exactly what part is taking up how much memory. But that would be too easy wouldn't it.

        • The built-in browser tools know which virtual pages are mapped to the same physical pages, even though knowing that information would require getting kernel-level access to read the page table entries for the process? Does Chrome install a kernel module?

          The amount of RAM used by a set of processes which takes the exact same actions (down to the areas of memory allocated and the exact memory addresses used for every byte of data) will be different between Linux and Windows.

          • Isn't that entirely irrelevant and completely out of scope of the software's control?

            • It's out of the software's control, and still is completely relevant. The strategy of relying on shared pages makes the difference between whether a multiple-process model is *necessarily* huge bloat or easily-optimized to not bloat. For the application developer, it means designing the application to make some runtime state more stable (i.e. it's different per-run, but less-likely to change during a run) or to group strongly-stable state together (e.g. mmap() anonymous memory for blocks of things which

    • Comment removed based on user account deletion
    • No doubt, Firefox has stability issues and isn't as fast executing some js. If only Chrome didn't suck in comparison on every other front right down to being spyware.
    • No kidding, I just bought 128GB of ram for a little over $300. Granted that's for a server with 16 ram slots, but still... Unless you're running windows with 1 GB of RAM you're not going to have to worry about your browser using too much of it. To me it's not even a performance issue. It's all the crap they tack on slowly. Soon it's going to be like loading up the yahoo home page. You can "hide" those crapware features now... but how long until they decide it's "integrated" into the browser too much to be
    • by AmiMoJo ( 196126 )

      I've only got 4GB on my laptop and I'm happy with Chrome using tonnes of RAM. The thing is, with an SSD and a modern OS, using lots of RAM isn't an automatic fail these days. In fact, often it's a good idea.

  • by Lennie ( 16154 ) on Wednesday June 08, 2016 @11:50AM (#52275593)

    "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... [asadotzler.com]

    • by Anonymous Coward

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

      The motherfucker who said we didn't need a status bar, because status bars took up too much precious vertical space, has a fucking position:fixed CSS div on his fucking webpage.

      Fuck you, Asa. You were the cancer that killed Firefox back in 4.0.

  • by Lawrence_Bird ( 67278 ) on Wednesday June 08, 2016 @11:55AM (#52275637) Homepage

    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).

    • by jlv ( 5619 )

      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.

  • Electrolysis? (Score:4, Interesting)

    by methano ( 519830 ) on Wednesday June 08, 2016 @12:02PM (#52275705)
    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.
    • I'm guessing it has something to do with splitting water into oxygen and hydrogen, and splitting a single application process into multiple processes.
      • Okay, but why have a catchy name for a change in process handling at all? I know they are pleased with themselves but this is just an entry on a changelog.
        • Re:Electrolysis? (Score:4, Insightful)

          by James Carnley ( 789899 ) on Wednesday June 08, 2016 @05:06PM (#52277751) Homepage

          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.

          • "This is a huge multi-year project that almost rewrites whole portions of the browser."

            That's down to poor abstraction and design, which hopefully was fixed in that re-write, not how monumental the feature is. That cleaner design is a bigger change than the process handling itself. If they've reworked that much of the code-base then it justifies a version increment that possibly would come with a cool code name the process handling itself... yes just a changelog.
    • Where did they get a name like "Electrolysis"?

      It's what web pages crave?

  • Finally (Score:2, Funny)

    by EvilSS ( 557649 )
    I've always wanted a web browser that can also get rid of unwanted hair.
  • Was not it only, what, 20 years ago, when multi-threading was all the rage, and the OSes, that didn't offer it, were ridiculed?

    Can't wait for aout to come back and take over ELF again...

    • by MobyDisk ( 75490 )

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

  • Whatever. (Score:5, Insightful)

    by sootman ( 158191 ) on Wednesday June 08, 2016 @12:12PM (#52275777) Homepage Journal

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

  • The story is that Mozilla can change your settings without your knowledge or permission, per Asa's blog: https://asadotzler.com/2016/06/06/firefox-48-beta-release-and-e10s/

    It starts out simple enough, with some A-B testing:

    "This is a huge change for Firefox, the largest we’ve ever shipped. 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, approximate

  • by rsilvergun ( 571051 ) on Wednesday June 08, 2016 @01:28PM (#52276275)
    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...
  • by Anonymous Coward

    So each tab has a thread? They still can't manage to multithread a bunch of different shit in one tab? My problem with Firefox's single-threading is never that I'm trying to do CPU intensive shit in two tabs at once, it's that some shitty Flash or video is hogging 100% of one CPU core and stuttering when it would work fine if they could just manage to use more than one core to playback the damn content.

  • All those processes share some state, so if one crashes all bets are off regarding the other processes too. Expect pwnage soon
  • Whereas improved performance in apps is a good thing, the elephant in the room is the lack of privacy.
    Google is state sponsored spyware on a global scale. Microsoft Windows and Facebook are as well.

    see:
    http://betanews.com/2015/08/15/firefox-stealthily-loads-webpages-when-you-hover-over-links-heres-how-to-stop-$
    https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections

    There is no lack of performance in a web browser on modern machines. The slowdown is because websites
    all spider-connec

  • It doesn't take much more RAM to break things into multiple processes. It just looks that way because of copy-on-write pages. Look at active pages in vmstat. I told them to use one process per origin domain [mozilla.org], and have each origin have its own storage, and even created a proof of concept on top of webkit in 400 lines of code. Not a single comment against. Just silence. Firefox is dead.

  • by AbRASiON ( 589899 ) * on Wednesday June 08, 2016 @04:44PM (#52277607) Journal

    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)

    • by chefmonkey ( 140671 ) on Wednesday June 08, 2016 @05:27PM (#52277869)

      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."

    • 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.

      • Thanks for that, I'll have a play around. I saw your other reply and wasn't sure if you knew your stuff but I think from this post it's evident.

        I use power close a lot (try it out) - it's quite handy when you're 400 deep in tabs and not sure what dupes you have open.
        You don't develop by any chance do you? I have a cracker suggestion someone said they liked for the awesome bar but sadly hasn't gone anywhere.

        • You don't develop by any chance do you?

          Not as much as I'd like to, but I have a certain amount of influence over feature implementation. If you want to describe the idea here, I'll pass it along.

  • I can use the new version of Firefox to remove unwanted body hair? cool!
  • Until i find a solution for sync with my own server. Firefox removed the sync 1.1 protocol with local-only key (additional to the password) and now allows you to login only with e-mail and password. This means, the firefox server can decipher your data.
    They have some wrapping scheme, but it's just not working when they deliver a modified login page grabbing the plaintext password.
    No go.

As you will see, I told them, in no uncertain terms, to see Figure one. -- Dave "First Strike" Pare

Working...