Showing posts with label arm. Show all posts
Showing posts with label arm. Show all posts

Wednesday, September 21, 2011

Starting new platform porting

You know, you can build Firefox, Thunderbird, Seamonkey and Xulrunner as Windows x64 binary by my work. Now, Firefox x64 is tier 2. (automation builder builds binary, runs automation test and nightly is available.). I am interested in porting new platforms

Android x86

It already works on gingerbread of Android x86 and will work on Honeybomb. Bug number is 681202. Also, Opera mobile already runs on Android x86

Windows/arm

Required Visual Studio 11. There is a lack of important libraries such as wsock32 to build binaries. I believe that it will be fixed by Visual Studio 11 beta (actually CTP, not beta!). Also, bug number for my status is 686843.

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.