Announcement

Collapse
No announcement yet.

Browser Javascript speed comparison.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Browser Javascript speed comparison.

    Lately some of my friends who use windows have been suggesting I switch to Google Chrome, claiming that V8 is much much faster than the javascript engines in Firefox and Midori (Webkit). Midori is currently my default browser.

    There's been a number of blog posts by different browser vendors that suggest that their javascript engine is in fact the fastest. When V8 came out, V8 was declared to be the fastest by the chrome community, and when SFX came out (for webkit) SFX was claimed to be the fastest.

    see:
    It's been a long time since my last post on this blog. I really was meaning to update everyone on my progress throughout the Summer of Code,...


    My results seem to suggest that v8 is currently faster than SquirrelFishExtreme, though I'd rather not jump ship to chrome just yet. I'd be interested hearing what browsers others use and what they think is fast.

    Test Setup:
    $ uname -a
    Linux sreyan-desktop 2.6.31-17-generic #54-Ubuntu SMP Thu Dec 10 16:20:31 UTC 2009 i686 GNU/Linux

    $ cat /proc/cpuinfo
    ...
    model name : AMD Phenom(tm) II X3 720 Processor

    $ dpkg --status firefox-3.5|grep Version
    Version: 3.5.6+nobinonly-0ubuntu0.9.10.1
    $ dpkg --status midori|grep Version
    Version: 0.2.2-1+git20091230~kkwkt2
    $ dpkg --status libwebkit-1.0-2|grep Version
    Version: 1.1.17-2~kkwkt1
    $ dpkg --status google-chrome-beta|grep Version
    Version: 4.0.249.43-r34537

    Sunspider results:
    Midori:
    ============================================
    RESULTS (means and 95% confidence intervals)
    --------------------------------------------
    Total: 772.2ms +/- 5.0%
    --------------------------------------------

    3d: 100.0ms +/- 6.8%
    cube: 30.4ms +/- 16.3%
    morph: 37.6ms +/- 16.0%
    raytrace: 32.0ms +/- 17.6%

    access: 96.2ms +/- 7.4%
    binary-trees: 16.2ms +/- 13.7%
    fannkuch: 31.6ms +/- 7.1%
    nbody: 30.0ms +/- 8.3%
    nsieve: 18.4ms +/- 39.6%

    bitops: 66.2ms +/- 19.2%
    3bit-bits-in-byte: 9.4ms +/- 65.2%
    bits-in-byte: 20.0ms +/- 44.0%
    bitwise-and: 15.4ms +/- 46.9%
    nsieve-bits: 21.4ms +/- 38.7%

    controlflow: 10.8ms +/- 5.1%
    recursive: 10.8ms +/- 5.1%

    crypto: 58.8ms +/- 6.2%
    aes: 22.2ms +/- 13.9%
    md5: 17.6ms +/- 6.3%
    sha1: 19.0ms +/- 12.2%

    date: 76.8ms +/- 10.2%
    format-tofte: 36.6ms +/- 26.9%
    format-xparb: 40.2ms +/- 6.7%

    math: 103.6ms +/- 10.6%
    cordic: 39.0ms +/- 22.2%
    partial-sums: 40.6ms +/- 6.3%
    spectral-norm: 24.0ms +/- 11.0%

    regexp: 27.8ms +/- 18.0%
    dna: 27.8ms +/- 18.0%

    string: 232.0ms +/- 5.5%
    base64: 33.6ms +/- 5.6%
    fasta: 44.4ms +/- 7.3%
    tagcloud: 44.6ms +/- 8.9%
    unpack-code: 64.6ms +/- 9.5%
    validate-input: 44.8ms +/- 9.1%
    Chrome:
    ============================================
    RESULTS (means and 95% confidence intervals)
    --------------------------------------------
    Total: 522.8ms +/- 5.7%
    --------------------------------------------

    3d: 78.4ms +/- 15.8%
    cube: 24.4ms +/- 4.6%
    morph: 32.0ms +/- 28.4%
    raytrace: 22.0ms +/- 16.5%

    access: 43.6ms +/- 17.3%
    binary-trees: 2.8ms +/- 79.4%
    fannkuch: 15.4ms +/- 13.5%
    nbody: 18.2ms +/- 22.3%
    nsieve: 7.2ms +/- 37.4%

    bitops: 62.0ms +/- 20.6%
    3bit-bits-in-byte: 8.2ms +/- 42.1%
    bits-in-byte: 18.0ms +/- 55.9%
    bitwise-and: 16.4ms +/- 54.6%
    nsieve-bits: 19.4ms +/- 9.7%

    controlflow: 4.4ms +/- 81.4%
    recursive: 4.4ms +/- 81.4%

    crypto: 33.0ms +/- 9.6%
    aes: 10.4ms +/- 24.8%
    md5: 12.4ms +/- 24.1%
    sha1: 10.2ms +/- 13.4%

    date: 63.2ms +/- 11.3%
    format-tofte: 28.0ms +/- 22.6%
    format-xparb: 35.2ms +/- 3.9%

    math: 48.8ms +/- 10.6%
    cordic: 16.8ms +/- 3.3%
    partial-sums: 21.4ms +/- 24.9%
    spectral-norm: 10.6ms +/- 29.4%

    regexp: 15.0ms +/- 13.1%
    dna: 15.0ms +/- 13.1%

    string: 174.4ms +/- 10.4%
    base64: 20.8ms +/- 10.7%
    fasta: 35.2ms +/- 11.6%
    tagcloud: 34.2ms +/- 4.7%
    unpack-code: 53.0ms +/- 2.9%
    validate-input: 31.2ms +/- 40.1%
    Firefox:
    ============================================
    RESULTS (means and 95% confidence intervals)
    --------------------------------------------
    Total: 1198.0ms +/- 2.2%
    --------------------------------------------

    3d: 172.0ms +/- 5.3%
    cube: 52.4ms +/- 9.0%
    morph: 40.8ms +/- 7.3%
    raytrace: 78.8ms +/- 3.4%

    access: 172.6ms +/- 2.9%
    binary-trees: 50.8ms +/- 12.9%
    fannkuch: 72.6ms +/- 0.9%
    nbody: 34.6ms +/- 6.0%
    nsieve: 14.6ms +/- 34.4%

    bitops: 45.4ms +/- 4.6%
    3bit-bits-in-byte: 2.4ms +/- 78.6%
    bits-in-byte: 8.6ms +/- 12.9%
    bitwise-and: 5.2ms +/- 51.8%
    nsieve-bits: 29.2ms +/- 19.1%

    controlflow: 53.8ms +/- 10.9%
    recursive: 53.8ms +/- 10.9%

    crypto: 69.0ms +/- 6.4%
    aes: 36.2ms +/- 3.8%
    md5: 19.2ms +/- 14.0%
    sha1: 13.6ms +/- 32.7%

    date: 157.4ms +/- 4.2%
    format-tofte: 87.2ms +/- 5.4%
    format-xparb: 70.2ms +/- 6.8%

    math: 66.0ms +/- 11.5%
    cordic: 33.0ms +/- 3.8%
    partial-sums: 23.2ms +/- 26.1%
    spectral-norm: 9.8ms +/- 49.5%

    regexp: 75.0ms +/- 2.3%
    dna: 75.0ms +/- 2.3%

    string: 386.8ms +/- 3.5%
    base64: 25.0ms +/- 31.6%
    fasta: 88.2ms +/- 1.8%
    tagcloud: 103.8ms +/- 0.5%
    unpack-code: 126.6ms +/- 2.6%
    validate-input: 43.2ms +/- 15.1%

  • #2
    If your looking for overall browser performance I find that peacekeepers benchmark is great. Overall results of thousands of benches can be seen here.

    Comment


    • #3
      Couple of comparisons on the same machine between linux browsers and windows browsers:

      Linux


      Windows 7


      As you can see if you want comparable speeds between OS's you really have to run Opera 10.5 or Chrome. Other browsers are pretty crippled when it comes to linux in performance terms.
      Last edited by deanjo; 03 January 2010, 04:31 PM.

      Comment


      • #4
        Deanjo, I told you once and I'll tell you again:
        Those tests you ran look in-favorable for Firefox on Linux because you're running an amd64-build of Firefox on Linux but a x86-build on windows. Firefox' new Javascript-engine does not yet work on amd64 (it supposedly does in 3.7 alpha though) so it defaults to its old engine there. If you'd run a x86-build on Linux as well you'd get virtually the same results as on windows.
        @topic: Who cares if browser A is faster than browser B/C in benchmark D? If there is no site/web-app which feels too slow or sluggish to you, why should you switch your browser?

        Comment


        • #5
          Originally posted by Zhick View Post
          Deanjo, I told you once and I'll tell you again:
          Those tests you ran look in-favorable for Firefox on Linux because you're running an amd64-build of Firefox on Linux but a x86-build on windows. Firefox' new Javascript-engine does not yet work on amd64 (it supposedly does in 3.7 alpha though) so it defaults to its old engine there. If you'd run a x86-build on Linux as well you'd get virtually the same results as on windows.
          @topic: Who cares if browser A is faster than browser B/C in benchmark D? If there is no site/web-app which feels too slow or sluggish to you, why should you switch your browser?
          The minefield in the results is 64-bit.

          Comment


          • #6
            Originally posted by deanjo View Post
            The minefield in the results is 64-bit.

            http://wiki.mozilla-x86-64.com/Firefoxownload
            Goddammit will you read my post please? As I mentioned as of 3.7 the engine also works on amd64. So to make you comparison fair you either have to run a x86 build of firefox 3.5.6 or an amd64-build of firefox 3.7 alpha on Linux.

            Comment


            • #7
              Originally posted by Zhick View Post
              Goddammit will you read my post please? As I mentioned as of 3.7 the engine also works on amd64. So to make you comparison fair you either have to run a x86 build of firefox 3.5.6 or an amd64-build of firefox 3.7 alpha on Linux.

              Minefield on linux 64-bit STILL gets it's ass kicked.

              Comment


              • #8
                Linux FF 32-bit 3.5.6



                My original results and conclusion still stands true.
                Last edited by deanjo; 03 January 2010, 06:41 PM.

                Comment


                • #9
                  Hmm, I gave that test a spin, but chromium (4.0.289.0) just stops at the second test here, with the following error in the developer console.

                  Code:
                  Uncaught TypeError: Cannot call method 'getElementsByTagName' of undefined
                  Despite being a little sluggish, I'll stick to the more reliable and feature rich Firefox for now.

                  Comment


                  • #10
                    Originally posted by Zhick View Post
                    @topic: Who cares if browser A is faster than browser B/C in benchmark D? If there is no site/web-app which feels too slow or sluggish to you, why should you switch your browser?
                    You're absolutely right to imply that if something is "fast/good enough" there's no reason to switch.

                    Those measurements were taken on my desktop. On my netbook the speed does matter a great deal more because the sluggishness is "painful".

                    Comment

                    Working...
                    X