Firefox 18 发布了,新闻说启用了IonMonkey JIT的SpiderMonkey性能提升了25%(Kraken)。今天测试了一下,发现在 Linux上,Firefox 18 比 Firefox 17 的提升,甚至可以达到 47%,跟 Chromium 的速度旗鼓相当。以下是用我的台式机跑出来的 Kraken、V8、SunSpider、Octane 四个Benchmark的结果。
Kraken Benchmark
Firefox 18
详细结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
=============================================== RESULTS (means and 95% confidence intervals) ----------------------------------------------- Total: 3237.6ms +/- 1.4% ----------------------------------------------- ai: 151.8ms +/- 0.4% <a href="http://krakenbenchmark.mozilla.org/explanations/astar.html">astar</a>: 151.8ms +/- 0.4% audio: 1152.6ms +/- 2.3% <a href="http://krakenbenchmark.mozilla.org/explanations/beat-detection.html">beat-detection</a>: 345.4ms +/- 1.1% <a href="http://krakenbenchmark.mozilla.org/explanations/dft.html">dft</a>: 376.1ms +/- 6.5% <a href="http://krakenbenchmark.mozilla.org/explanations/fft.html">fft</a>: 222.7ms +/- 1.1% <a href="http://krakenbenchmark.mozilla.org/explanations/oscillator.html">oscillator</a>: 208.4ms +/- 7.1% imaging: 868.5ms +/- 1.0% <a href="http://krakenbenchmark.mozilla.org/explanations/gaussian-blur.html">gaussian-blur</a>: 375.4ms +/- 1.2% <a href="http://krakenbenchmark.mozilla.org/explanations/darkroom.html">darkroom</a>: 293.6ms +/- 0.7% <a href="http://krakenbenchmark.mozilla.org/explanations/desaturate.html">desaturate</a>: 199.5ms +/- 3.2% json: 206.0ms +/- 0.8% <a href="http://krakenbenchmark.mozilla.org/explanations/parse-financial.html">parse-financial</a>: 110.1ms +/- 0.7% <a href="http://krakenbenchmark.mozilla.org/explanations/stringify-tinderbox.html">stringify-tinderbox</a>: 95.9ms +/- 1.2% stanford: 858.7ms +/- 3.1% crypto-aes: 199.4ms +/- 3.0% crypto-ccm: 178.1ms +/- 9.5% crypto-pbkdf2: 353.3ms +/- 2.2% crypto-sha256-iterative: 127.9ms +/- 18.2% |
Firefox 17
详细结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
=============================================== RESULTS (means and 95% confidence intervals) ----------------------------------------------- Total: 4767.5ms +/- 1.2% ----------------------------------------------- ai: 164.6ms +/- 2.3% <a href="http://krakenbenchmark.mozilla.org/explanations/astar.html">astar</a>: 164.6ms +/- 2.3% audio: 1666.5ms +/- 1.9% <a href="http://krakenbenchmark.mozilla.org/explanations/beat-detection.html">beat-detection</a>: 412.3ms +/- 0.8% <a href="http://krakenbenchmark.mozilla.org/explanations/dft.html">dft</a>: 656.3ms +/- 1.7% <a href="http://krakenbenchmark.mozilla.org/explanations/fft.html">fft</a>: 310.0ms +/- 6.4% <a href="http://krakenbenchmark.mozilla.org/explanations/oscillator.html">oscillator</a>: 287.9ms +/- 10.8% imaging: 1862.4ms +/- 1.6% <a href="http://krakenbenchmark.mozilla.org/explanations/gaussian-blur.html">gaussian-blur</a>: 1144.3ms +/- 0.3% <a href="http://krakenbenchmark.mozilla.org/explanations/darkroom.html">darkroom</a>: 376.8ms +/- 0.4% <a href="http://krakenbenchmark.mozilla.org/explanations/desaturate.html">desaturate</a>: 341.3ms +/- 9.0% json: 188.1ms +/- 3.2% <a href="http://krakenbenchmark.mozilla.org/explanations/parse-financial.html">parse-financial</a>: 107.5ms +/- 3.2% <a href="http://krakenbenchmark.mozilla.org/explanations/stringify-tinderbox.html">stringify-tinderbox</a>: 80.6ms +/- 6.6% stanford: 885.9ms +/- 1.8% crypto-aes: 219.2ms +/- 0.8% crypto-ccm: 157.4ms +/- 1.5% crypto-pbkdf2: 394.9ms +/- 4.3% crypto-sha256-iterative: 114.4ms +/- 0.6% |
Firefox 18 vs. Firefox 17
(为了防止折行,将“FROM”和“TO”列隐去了,可以参看上面的结果):
从结果来看引入了IonMonkey之后加速了将近47%。但是同时,个别程序性能反而下降了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
TEST COMPARISON DETAILS ============================================================= ** TOTAL **: 1.47x as fast significant ============================================================= ai: 1.084x as fast significant astar: 1.084x as fast significant audio: 1.45x as fast significant beat-detection: 1.194x as fast significant dft: 1.75x as fast significant fft: 1.39x as fast significant oscillator: 1.38x as fast significant imaging: 2.14x as fast significant gaussian-blur: 3.05x as fast significant darkroom: 1.28x as fast significant desaturate: 1.71x as fast significant json: *1.095x as slow* significant parse-financial: ?? might be *1.024x as slow* stringify-tinderbox: *1.190x as slow* significant stanford: - crypto-aes: 1.099x as fast significant crypto-ccm: *1.132x as slow* significant crypto-pbkdf2: 1.118x as fast significant crypto-sha256-iterative: ?? might be *1.118x as slow* |
Chromium
作为对比,一并测试了一下 Chromium 的得分,版本号 18.0.1025.168(详细结果):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
=============================================== RESULTS (means and 95% confidence intervals) ----------------------------------------------- Total: 3010.3ms +/- 1.0% ----------------------------------------------- ai: 244.1ms +/- 0.5% <a href="http://krakenbenchmark.mozilla.org/explanations/astar.html">astar</a>: 244.1ms +/- 0.5% audio: 1446.5ms +/- 0.8% <a href="http://krakenbenchmark.mozilla.org/explanations/beat-detection.html">beat-detection</a>: 444.6ms +/- 3.0% <a href="http://krakenbenchmark.mozilla.org/explanations/dft.html">dft</a>: 471.6ms +/- 0.7% <a href="http://krakenbenchmark.mozilla.org/explanations/fft.html">fft</a>: 298.6ms +/- 0.3% <a href="http://krakenbenchmark.mozilla.org/explanations/oscillator.html">oscillator</a>: 231.7ms +/- 0.8% imaging: 704.7ms +/- 0.5% <a href="http://krakenbenchmark.mozilla.org/explanations/gaussian-blur.html">gaussian-blur</a>: 259.6ms +/- 0.2% <a href="http://krakenbenchmark.mozilla.org/explanations/darkroom.html">darkroom</a>: 216.6ms +/- 0.3% <a href="http://krakenbenchmark.mozilla.org/explanations/desaturate.html">desaturate</a>: 228.5ms +/- 1.5% json: 176.2ms +/- 3.7% <a href="http://krakenbenchmark.mozilla.org/explanations/parse-financial.html">parse-financial</a>: 103.2ms +/- 1.3% <a href="http://krakenbenchmark.mozilla.org/explanations/stringify-tinderbox.html">stringify-tinderbox</a>: 73.0ms +/- 7.9% stanford: 438.8ms +/- 3.2% crypto-aes: 108.2ms +/- 4.7% crypto-ccm: 115.0ms +/- 5.3% crypto-pbkdf2: 136.7ms +/- 2.8% crypto-sha256-iterative: 78.9ms +/- 2.2% |
总体上而言还是 Chromium 快一点,但是得分很接近,在一些分项上 Firefox 18.0 速度比Chromium更快。
Firefox 18.0 vs Chromium
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
TEST COMPARISON DETAILS ==================================================================================== ** TOTAL **: *1.076x as slow* significant ============================================================ ai: 1.61x as fast significant astar: 1.61x as fast significant audio: 1.25x as fast significant beat-detection: 1.29x as fast significant dft: 1.25x as fast significant fft: 1.34x as fast significant oscillator: 1.112x as fast significant imaging: *1.23x as slow* significant gaussian-blur: *1.45x as slow* significant darkroom: *1.36x as slow* significant desaturate: 1.145x as fast significant json: *1.169x as slow* significant parse-financial: *1.067x as slow* significant stringify-tinderbox: *1.31x as slow* significant stanford: *1.96x as slow* significant crypto-aes: *1.84x as slow* significant crypto-ccm: *1.55x as slow* significant crypto-pbkdf2: *2.58x as slow* significant crypto-sha256-iterative: *1.62x as slow* significant |
Sunspider 0.91 Benchmark
SunSpider 0.9.1 的测试结果,有点意外的是 Firefox 17.0.1 最快,其次是Firefox 18.0,Chromium最慢。嗯,一定是我打开的方式不对。
测试地址:http://www.webkit.org/perf/sunspider-0.9.1/sunspider-0.9.1/driver.html
Firefox 18.0
详细结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
============================================ RESULTS (means and 95% confidence intervals) -------------------------------------------- Total: 269.7ms +/- 0.9% -------------------------------------------- 3d: 46.5ms +/- 1.1% cube: 16.7ms +/- 2.1% morph: 8.8ms +/- 3.4% raytrace: 21.0ms +/- 0.0% access: 23.7ms +/- 2.9% binary-trees: 3.3ms +/- 10.5% fannkuch: 11.7ms +/- 3.0% nbody: 4.6ms +/- 8.0% nsieve: 4.1ms +/- 5.5% bitops: 14.1ms +/- 5.0% 3bit-bits-in-byte: 1.3ms +/- 26.6% bits-in-byte: 5.0ms +/- 0.0% bitwise-and: 3.6ms +/- 10.3% nsieve-bits: 4.2ms +/- 7.2% controlflow: 3.5ms +/- 14.4% recursive: 3.5ms +/- 14.4% crypto: 28.7ms +/- 7.0% aes: 13.5ms +/- 7.6% md5: 10.5ms +/- 15.5% sha1: 4.7ms +/- 12.5% date: 36.8ms +/- 2.4% format-tofte: 23.1ms +/- 1.8% format-xparb: 13.7ms +/- 4.9% math: 22.5ms +/- 2.7% cordic: 4.1ms +/- 5.5% partial-sums: 14.8ms +/- 2.0% spectral-norm: 3.6ms +/- 13.9% regexp: 15.6ms +/- 2.4% dna: 15.6ms +/- 2.4% string: 78.3ms +/- 2.6% base64: 6.3ms +/- 5.5% fasta: 9.0ms +/- 0.0% tagcloud: 22.5ms +/- 1.7% unpack-code: 29.3ms +/- 5.9% validate-input: 11.2ms +/- 2.7% |
Chromium
详细结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
============================================ RESULTS (means and 95% confidence intervals) -------------------------------------------- Total: 294.6ms +/- 1.5% -------------------------------------------- 3d: 41.0ms +/- 7.6% cube: 12.6ms +/- 9.3% morph: 11.3ms +/- 3.1% raytrace: 17.1ms +/- 14.8% access: 26.9ms +/- 3.9% binary-trees: 2.5ms +/- 15.1% fannkuch: 10.9ms +/- 5.7% nbody: 8.2ms +/- 5.5% nsieve: 5.3ms +/- 9.1% bitops: 39.0ms +/- 4.8% 3bit-bits-in-byte: 5.9ms +/- 8.9% bits-in-byte: 8.0ms +/- 8.4% bitwise-and: 17.8ms +/- 5.9% nsieve-bits: 7.3ms +/- 9.3% controlflow: 4.4ms +/- 13.7% recursive: 4.4ms +/- 13.7% crypto: 21.8ms +/- 5.3% aes: 11.6ms +/- 5.2% md5: 4.8ms +/- 6.3% sha1: 5.4ms +/- 11.2% date: 40.7ms +/- 4.6% format-tofte: 16.1ms +/- 7.4% format-xparb: 24.6ms +/- 6.0% math: 24.0ms +/- 4.0% cordic: 5.6ms +/- 6.6% partial-sums: 12.5ms +/- 4.9% spectral-norm: 5.9ms +/- 10.6% regexp: 9.9ms +/- 2.3% dna: 9.9ms +/- 2.3% string: 86.9ms +/- 1.8% base64: 7.6ms +/- 6.6% fasta: 13.9ms +/- 5.7% tagcloud: 20.3ms +/- 1.7% unpack-code: 29.2ms +/- 1.9% validate-input: 15.9ms +/- 4.9% |
Firefox 17.0.1
详细结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
============================================ RESULTS (means and 95% confidence intervals) -------------------------------------------- Total: 248.2ms +/- 1.1% -------------------------------------------- 3d: 42.6ms +/- 1.4% cube: 16.3ms +/- 2.1% morph: 8.0ms +/- 0.0% raytrace: 18.3ms +/- 1.9% access: 22.2ms +/- 3.7% binary-trees: 2.8ms +/- 10.8% fannkuch: 9.4ms +/- 3.9% nbody: 5.4ms +/- 6.8% nsieve: 4.6ms +/- 8.0% bitops: 15.6ms +/- 2.4% 3bit-bits-in-byte: 1.1ms +/- 20.5% bits-in-byte: 5.9ms +/- 3.8% bitwise-and: 4.3ms +/- 8.0% nsieve-bits: 4.3ms +/- 8.0% controlflow: 2.9ms +/- 7.8% recursive: 2.9ms +/- 7.8% crypto: 24.9ms +/- 4.2% aes: 13.7ms +/- 4.9% md5: 7.5ms +/- 9.3% sha1: 3.7ms +/- 9.3% date: 36.8ms +/- 1.5% format-tofte: 22.4ms +/- 2.2% format-xparb: 14.4ms +/- 2.6% math: 21.8ms +/- 4.0% cordic: 4.2ms +/- 7.2% partial-sums: 13.7ms +/- 3.5% spectral-norm: 3.9ms +/- 10.4% regexp: 15.2ms +/- 2.0% dna: 15.2ms +/- 2.0% string: 66.2ms +/- 1.5% base64: 5.2ms +/- 5.8% fasta: 8.9ms +/- 2.5% tagcloud: 20.3ms +/- 1.7% unpack-code: 23.5ms +/- 1.6% validate-input: 8.3ms +/- 4.2% |
V8-v7 Benchmark
V8的测试结果,Firefox 18.0 > Chromium > Firefox 17.0.1
测试地址:http://v8.googlecode.com/svn/data/benchmarks/v7/run.html
Firefox 18.0
Score: 7671
Richards: 8811
DeltaBlue: 10991
Crypto: 11226
RayTrace: 6761
EarleyBoyer: 11968
RegExp: 904
Splay: 9461
NavierStokes: 15932
Chromium
Score: 7298
Richards: 10584
DeltaBlue: 14030
Crypto: 13852
RayTrace: 8836
EarleyBoyer: 19236
RegExp: 2368
Splay: 3268
NavierStokes: 2974
Firefox 17.0.1
Score: 5695
Richards: 6499
DeltaBlue: 7061
Crypto: 9931
RayTrace: 3211
EarleyBoyer: 7682
RegExp: 1447
Splay: 7603
NavierStokes: 8945
Octane v1 Benchmark
最后是 Octane 的测试结果。Octane Benchmark 的结果是一个分数,得分越高越好。总体得分来看,Chromium > Firefox 18.0 > Firefox 17.0.1。
关于这个Benchmark,Mozilla的开发人员Nicholas Nethercote并不认可,发表了一篇博客,认为测试程序的选取不具有代表性,过度的考虑了Chrome Apps。
测试地址:http://octane-benchmark.googlecode.com/svn/latest/index.html
Firefox 18:
Octane Score: 6754
Richards 8977
Deltablue 9984
Crypto 9910
Raytrace 6326
EarleyBoyer 11472
Regexp 634
Splay 9192
NavierStokes 15768
pdf.js 3452
Mandreel 6184
GB Emulator 8755
CodeLoad 7924
Box2DWeb 6940
Firefox 17:
Octane Score: 5618
Richards 6365
Deltablue 7425
Crypto 9962
Raytrace 3217
EarleyBoyer 7217
Regexp 1410
Splay 7896
NavierStokes 8877
pdf.js 4050
Mandreel 5447
GB Emulator 5096
CodeLoad 8622
Box2DWeb 5306
Chromium 18.0
Octane Score: 7735
Richards 8804
Deltablue 14116
Crypto 13961
Raytrace 9028
EarleyBoyer 19073
Regexp 2419
Splay 3726
NavierStokes 3112
pdf.js 10526
Mandreel 7992
GB Emulator 11014
CodeLoad 8310
Box2DWeb 5498
说明
- 测试的机器的配置是 Intel(R) Core(TM)2 Quad CPU Q9400 @ 2.66GHz, 8G DDR2, Ubuntu 10.04 x86_64。
- 我机器上的 Chromium 的版本号似乎比 Chrome 的小,不确定是不是最新的版本(用的 stable release channel),对于测试结果有影响。
- 发现默认情况下Firefox 17和Firefox 18不会同时运行。Firefox在启动的时候会检查一下是否已经有了Firefox进程,如果有的话就不开新的进程了。这使得在测试的时候必须先关闭所有的Firefox浏览器窗口才能够换一个版本。为了避免乌龙我在每次测试之前,通过“About Firefox”菜单确认了版本。
- 这个测试结果仅限于Linux,在Windows环境下或许是完全另外的一个结果。相比而言各个浏览器对于Linux环境下的性能优化都不是很上心,小小失落。
Recent Comments