Monday, March 21, 2011

Firefox 4 on pandaboard (Ubuntu 10.10)

I got pandaboard to improve ARM code on Firefox. Pandaboard uses TI OMAP4 (Dual-core Cortex-A9 and PowerVR SGX 540), so it is the most powerful ARM board.

This data is sunspider benchmark on Firefox 4 on pandaboard. BTW, my Android phone (HTC Desire HD) is 2800ms.

============================================
RESULTS (means and 95% confidence intervals)
--------------------------------------------
Total:                 1984.1ms +/- 0.7%
--------------------------------------------

  3d:                   354.2ms +/- 1.3%
    cube:               139.8ms +/- 2.0%
    morph:               65.2ms +/- 5.1%
    raytrace:           149.2ms +/- 3.5%

  access:               290.7ms +/- 2.5%
    binary-trees:        47.1ms +/- 3.5%
    fannkuch:           116.6ms +/- 6.9%
    nbody:               47.1ms +/- 6.9%
    nsieve:              79.9ms +/- 2.0%

  bitops:               105.1ms +/- 1.8%
    3bit-bits-in-byte:    5.1ms +/- 8.0%
    bits-in-byte:        50.4ms +/- 1.2%
    bitwise-and:         12.3ms +/- 5.5%
    nsieve-bits:         37.3ms +/- 2.9%

  controlflow:           21.5ms +/- 7.2%
    recursive:           21.5ms +/- 7.2%

  crypto:               181.5ms +/- 1.9%
    aes:                 94.5ms +/- 0.8%
    md5:                 51.8ms +/- 4.7%
    sha1:                35.2ms +/- 5.2%

  date:                 279.9ms +/- 1.9%
    format-tofte:       173.9ms +/- 2.6%
    format-xparb:       106.0ms +/- 2.9%

  math:                 144.1ms +/- 1.2%
    cordic:              39.7ms +/- 1.5%
    partial-sums:        47.5ms +/- 2.3%
    spectral-norm:       56.9ms +/- 1.7%

  regexp:               123.1ms +/- 3.9%
    dna:                123.1ms +/- 3.9%

  string:               484.0ms +/- 1.0%
    base64:              44.3ms +/- 3.3%
    fasta:               96.4ms +/- 3.1%
    tagcloud:           146.4ms +/- 1.5%
    unpack-code:        135.5ms +/- 1.7%
    validate-input:      61.4ms +/- 3.2%

Although I have already landed ARM optimized NSS code (for crypto) into cvs.mozilla.org, it won't used by Firefox 4 or 5. It is for NSS trunk (NSS version 4). But I am investigate ARM specific optimization for Firefox 5.