Slashdot Mirror


Testing a Pre-Release, Parallel Firefox

Firefox, in its official version, still lacks support for multi-threading (running on different processors), though Chrome and Internet Explorer 8 both have this feature. A Firefox project called Electrolysis is underway to close this gap. A blog author tested a pre-release version of Firefox that loads different tabs in parallel, and he chronicles his findings, including a huge speedup in Javascript vs. Firefox version 3.5 (though the pre-release still lags Chrome in many of the tests).

8 of 278 comments (clear)

  1. Good thing by Darkness404 · · Score: 3, Insightful

    This is a good thing. Firefox desperately needs to modernize. About the only killer feature left in Firefox is customization. Other browsers have already caught up to Firefox in speed, features, and standards support.

    --
    Taxation is legalized theft, no more, no less.
    1. Re:Good thing by Qubit · · Score: 5, Insightful

      Other browsers have already caught up to Firefox in speed, features, and standards support.

      Many mainstream browsers are speedy, or at least speedy enough, but Firefox does offer a unique mix of features:

      Ogg Theora/Vorbis: Currently supported by Firefox, Chrome, Opera
      FOSS: Firefox, Chrome (just Chromium?)
      Cross-Platform on Win, Mac, GNU/Linux: Firefox, Chrome (maybe just beta?), Opera

      For me, both Firefox and Chrom{e|ium} look like good contenders. I've had good experiences with Mozilla products for quite some time, so I'll probably continue with Firefox.

      --

      coding is life /* the rest is */
    2. Re:Good thing by Darkness404 · · Score: 4, Insightful

      And really, Chrome is -the- browser to beat right now. If it had a more stable Linux version and had all the addons/themes along with the ability to customize absolutely everything, chances are most Linux distros would ship with it over Firefox.

      Yeah, Firefox and Chrome may be the only two competitors with some features, but compared to others, Firefox just can't compete. Things like supporting multi-threading, tab isolation, plugin isolation, JavaScript execution speed, and general UI responsiveness are all things that Firefox really lacks. Right now, the ability to customize and the fact that its available in Ubuntu without needing extra repos, are about the only things that are keeping me from using Chrome full time.

      --
      Taxation is legalized theft, no more, no less.
    3. Re:Good thing by Trepidity · · Score: 3, Insightful

      That's true, but Firefox will at least still run on platforms it doesn't have a native JS compiler for, presumably by falling back to the interpreter. Chrome just doesn't exist for non-x86/arm platforms.

  2. Tabbed processes would be better by BadAnalogyGuy · · Score: 5, Insightful

    Multithreading still relies on a single point of failure - the shared memory space.

    By doing what Chrome did, and breaking each tab instance into its own process, any single tab can crash/hang without affecting any other page.

    I know when I load an MPG video that it sometimes hangs the browser, and I can't do anything (close/minimize/switch away) while the media player is being loaded. This sometimes causes me stress.

  3. Summary is wrong! by A12m0v · · Score: 5, Insightful

    Firefox does support multithreading, what it doesn't support is multiprocessing. Firefox runs as a single process, whereas Chrome has a separate process for every site, plugin and extension.

    --
    GENERATION 25: The first time you see this, copy it into your sig on any forum and add 1 to the generation.
  4. ummm... by buddyglass · · Score: 3, Insightful

    Process-per-tab shouldn't speed up Javascript unless you're doing something else in a second tab that's hogging CPU. Most likely the Javascript performance gains came simply from the fact that he was using a 3.7 branch of the code. Which is kind of sad, considering bleeding-edge Firefox still lags behind Chrome by a considerable margin.

  5. Re:Thread != Process by fm6 · · Score: 5, Insightful

    The writer's mistake is more basic than just conflating threads and processes. You left out the parenthesis:

    still lacks support for multi-threading (running on different processors)

    Which not only conflates cores and processors, but also suggests that multithreading isn't useful if you don't have multiple cores/processors.

    When I was writing the concurrency chapter in the Java Tutorial, the experts would give me a very hard time if I allowed even a vague suggestion that this was true. The fact is, threads are extremely useful even if you only have one core to work with. For example, any well-written GUI program will not handle user interaction in the same thread with other functions; if it did, the GUI would freeze every time the program were waiting on something.

    Multithreading is a big topic these days because everybody wants to maximize their utilization of all these n-core processors. But it's not a new topic.

    This mistake seems to be very common. Which leaves me confused as to what's new here. It's not parallel downloading of files — Mozilla/Firefox has always done that. A more robust parallelism mechanism? Or maybe they're copying Chrome and giving each tab its own process (not thread!).