Chinaunix首页 | 论坛 | 博客
  • 博客访问: 19301
  • 博文数量: 4
  • 博客积分: 1435
  • 博客等级: 上尉
  • 技术积分: 60
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-13 19:51
文章分类
文章存档

2011年(1)

2010年(1)

2009年(1)

2008年(1)

我的朋友
最近访客

分类:

2010-03-05 07:40:50

opera 10.50 非专业测评

by cu995636


opera 10.50 终于发布了。千呼万唤始出来啊。

这款是自称“迄今为止最快”的浏览器,它的实力如何,想必大家都想一探究竟。

以下是我这个外行人做的一点小测试,本人不懂js,所以,那些测试都做了什么我是完全没概念,纯粹望文生义而已。至于一些人会提到“某些测试已经很老了,不再适用”——不关心,因为我不懂js。google把它们排到前边了,我就用它们。


参赛选手:opera 10.50 和 chrome(chromium) 5.0.343,
赛事内容:google根据关键字“javascript speed test”前几位有测试页面的链接里内容(有几个是介绍怎么测js的,并无测试页面)。
系统平台:win xp sp3。(本来想用lin的,可惜10.5的lin版还没出)


测试内容如下:



1 sunspider js benchmark



opera:
============================================
RESULTS (means and 95% confidence intervals)
--------------------------------------------
Total: 562.8ms +/- 5.7%
--------------------------------------------

3d: 76.4ms +/- 5.5%
cube: 24.4ms +/- 30.3%
morph: 23.2ms +/- 5.9%
raytrace: 28.8ms +/- 11.6%

access: 61.4ms +/- 22.8%
binary-trees: 11.2ms +/- 48.6%
fannkuch: 22.6ms +/- 39.0%
nbody: 16.6ms +/- 4.1%
nsieve: 11.0ms +/- 32.0%

bitops: 23.0ms +/- 6.6%
3bit-bits-in-byte: 2.8ms +/- 19.9%
bits-in-byte: 6.2ms +/- 9.0%
bitwise-and: 2.8ms +/- 79.4%
nsieve-bits: 11.2ms +/- 5.0%

controlflow: 5.0ms +/- 17.6%
recursive: 5.0ms +/- 17.6%

crypto: 35.4ms +/- 31.3%
aes: 23.4ms +/- 33.7%
md5: 9.0ms +/- 40.3%
sha1: 3.0ms +/- 180.6%

date: 81.6ms +/- 10.6%
format-tofte: 28.4ms +/- 5.9%
format-xparb: 53.2ms +/- 14.3%

math: 44.8ms +/- 17.4%
cordic: 15.0ms +/- 0.0%
partial-sums: 19.8ms +/- 33.3%
spectral-norm: 10.0ms +/- 12.4%

regexp: 18.6ms +/- 10.1%
dna: 18.6ms +/- 10.1%

string: 216.6ms +/- 10.0%
base64: 24.4ms +/- 24.1%
fasta: 33.4ms +/- 16.4%
tagcloud: 63.0ms +/- 15.7%
unpack-code: 47.0ms +/- 16.0%
validate-input: 48.8ms +/- 11.3%

------------------------------------------------------------------

chrome:
============================================
RESULTS (means and 95% confidence intervals)
--------------------------------------------
Total: 628.6ms +/- 2.1%
--------------------------------------------

3d: 104.6ms +/- 5.9%
cube: 37.6ms +/- 12.5%
morph: 37.8ms +/- 4.3%
raytrace: 29.2ms +/- 8.2%

access: 52.4ms +/- 4.6%
binary-trees: 3.0ms +/- 29.3%
fannkuch: 19.0ms +/- 4.6%
nbody: 23.6ms +/- 6.0%
nsieve: 6.8ms +/- 8.2%

bitops: 44.0ms +/- 6.3%
3bit-bits-in-byte: 4.4ms +/- 25.3%
bits-in-byte: 8.4ms +/- 8.1%
bitwise-and: 14.0ms +/- 15.4%
nsieve-bits: 17.2ms +/- 3.2%

controlflow: 4.0ms +/- 0.0%
recursive: 4.0ms +/- 0.0%

crypto: 37.0ms +/- 5.3%
aes: 13.2ms +/- 4.2%
md5: 12.4ms +/- 11.4%
sha1: 11.4ms +/- 6.0%

date: 75.4ms +/- 1.5%
format-tofte: 33.8ms +/- 3.1%
format-xparb: 41.6ms +/- 3.4%

math: 72.8ms +/- 3.3%
cordic: 24.4ms +/- 7.7%
partial-sums: 36.4ms +/- 7.1%
spectral-norm: 12.0ms +/- 10.4%

regexp: 20.2ms +/- 5.1%
dna: 20.2ms +/- 5.1%

string: 218.2ms +/- 3.3%
base64: 25.2ms +/- 6.4%
fasta: 30.4ms +/- 4.7%
tagcloud: 56.6ms +/- 2.5%
unpack-code: 80.8ms +/- 9.4%
validate-input: 25.2ms +/- 4.1%

上述数据都跑了3次,因为差别不大,所以只挑了两者相对最好的一次。
从以上数据可以得出,两者在很多方面基本上性能都差不多。opera在基本数学计算和逻辑运算方面要占据一定的优势。
ps:文章快打完了才发现,这个sunspider的测试是webkit的,换言之,opera是“客场作战”……






2

opera:
1. Quicksort 22.2
2. Factorials 71.1
3. Conway 36.8
4. Ribosome 15.7
5. MD5 19.6
6. Primes 13.1
7. Genetic Salesman 23.5
8. Arrays 11.9
9. Dates 14.6
10. Exceptions 16.7
Total Score: 245

chrome:
1. Quicksort 27.3
2. Factorials 137.6
3. Conway 34.9
4. Ribosome 19.2
5. MD5 16.6
6. Primes 14.1
7. Genetic Salesman 32.9
8. Arrays 6.9
9. Dates 20.3
10. Exceptions 8.9
Total Score: 319

chrome 在这个测试里完胜。
不过两者唯一拉开分数的只在计算第二项Factorials n! 和 2^n 上。其它的基本没差别。
opera在排序、日期上占优,chrome对数组和例外处理更好。





3
这个页面是从这个链接里找到的。它测什么我完全没概念……原谅外行人吧……从页面的介绍上来看,只看懂了“less is better”。

opera:
51 45 156 127 18
chrome:
79 40 176 150 37




4
以下为测试项目,opera的成绩在前。均为测5次后无重大偏差的平均值,
W3C DOM 1 24 ms 11 ms
W3C DOM 2 22 ms 10 ms
Table methods 21 ms 11 ms
innerHTML 1 12 ms 26 ms
innerHTML 2 6 ms 25 ms



5 我还做了另外一组测试(可惜那个原始页面我找不到了,用来测试的那个网页是保存在个人的计算机上的)
两者基本没差别(opera在大多数项目中有一点小小的优势,不过只有千分之几的差别),但 opera 对字符串的处理能力远要低于chrome,另一个拉开距离的是 parseint 函数,具体作用不明。

该页面中拉开差距的相应的测试代码如下:
function testConcatStrings()
{
var string1 = 'abcdefghijklmnopqrstuvxyz'
var string2 = 'abcdefghijklmnopqrstuvxyz'
var string3;
start = new Date();
for (var i=0; i<=1000000; i++)
{
string3 = string1 + string2;
}
end = new Date();
concatStringsTime = end-start;
var textElem = document.createTextNode(concatStringsTime + 'ms ')
document.getElementById('concatStringsResult').appendChild(textElem);
completed();
}

function testParseInt()
{
var value3;
start = new Date();
for (var i=0; i<=1000000; i++)
{
value3 = parseInt(123.23)
}
end = new Date();
parseIntTime = end-start;
var textElem = document.createTextNode(parseIntTime + 'ms ')
document.getElementById('parseIntResult').appendChild(textElem);
completed();
}




6
chrome v8 engine benchmark

数值越高越好。本来想各5次。但chrome跑出的数据很不稳定,故多两组。不过多一组少一组对结果完全没影响。chrome的最低分都比opera的最高分要高。

opera:
1914 1917 1924 1897 1890
chrome:
2174 2562 2065 2260 2293 2271 2474

opera在js引擎v8的专项测试中对chrome完败。





----------------------------------------------------------------
通过以上数据可以看出,opera 并没有吹牛,现在它的确拥有和chrome平起平坐的js渲染速度,在一些项目上它还有一定的优势(当然在另一些方面也是有缺陷的)。

不过这种速度上的优势的代价是巨大的:
opera以前的版本性价比是相当好的,以相对低的cpu、内存利用率获得较高的速度。而现在的opera在内存使用上完全放开了手脚,有些时候它的内存使用量比chrome还恐怖。
拿只开一个cu的bbs主页来说,opera使用了53392k内存,chrome使用了33412k。这还没算上使用flash的开销。
虽然现在内存白菜价,但opera这种为了把对方的优点比下去而丢掉自身原来的优点这点还是让人觉得有点凄凉……
阅读(353) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~