首页 > 代码库 > 关于谷歌JSV8与微软JSRT的性能比较

关于谷歌JSV8与微软JSRT的性能比较

首先,我并没有得到实际的比较结果,望有兴趣的朋友可以帮助完成这个比较。

benchmarksgame,提供了各种语言的性能比较,但都为linux下的测试,很难比较谷歌与微软的东西。

众所周知,JSV8有优秀的性能,但具体与IE10/11的JS引擎的性能孰高孰低,并没有权威的比较结果。单从浏览器方面的比较,谷歌不计内存使用、不计电源消耗,来提升Chrome的性能。而IE则在更多方面为用户着想——系统的兼容性、低碳环保、易扩展再利用方面都有绝对的优势。我特意分析过Chrome的渲染部分,默认字体均为点阵字体,未进行平滑处理,这将有一定的性能提升,但损失了表现力。而IE会以最佳的效果显示文字。谷歌在取巧!

近期希望大范围应用JavaScript嵌入到程序中,提高扩展性,希望透彻了解JSRT的性能。

benchmarks提供了jsv8的正则表达式测试代码,很有代表性,它的性能超过了所有语言。复制测试代码,实现JSRT测试,但没有提供完整的测试源数据,只找到了一个100KB的源数据。而测试页面的表格中分别是50000,500000,5000000的N值,搞不懂这些数据从何而来。源码里也没有。

我将就用100KB的数据做了测试,得到的测试结果是108812纳秒左右。

 benchmarksgame的数据

 N CPU secsElapsed secsMemory KBCode B≈ CPU Load
50,0000.050.05?373  17% 0% 0% 100%
500,0000.350.39264373  5% 0% 0% 100%
5,000,0003.293.30484,640373  0% 1% 1% 100%

这是benchmarksgame的5000000的测试结果输出:
agggtaaa|tttaccct 356
[cgt]gggtaaa|tttaccc[acg] 1250
a[act]ggtaaa|tttacc[agt]t 4252
ag[act]gtaaa|tttac[agt]ct 2894
agg[act]taaa|ttta[agt]cct 5435
aggg[acg]aaa|ttt[cgt]ccct 1537
agggt[cgt]aa|tt[acg]accct 1431
agggta[cgt]a|t[acg]taccct 1608
agggtaa[cgt]|[acg]ttaccct 2178

50833411
50000000
66800214

 

下面是我的测试程序输出:

agggtaaa|tttaccct       0
[cgt]gggtaaa|tttaccc[acg]       3
a[act]ggtaaa|tttacc[agt]t       9
ag[act]gtaaa|tttac[agt]ct       8
agg[act]taaa|ttta[agt]cct       10
aggg[acg]aaa|ttt[cgt]ccct       3
agggt[cgt]aa|tt[acg]accct       4
agggta[cgt]a|t[acg]taccct       3
agggtaa[cgt]|[acg]ttaccct       5

101745
100000
133640

 

感觉我的这100K数据有点像benchmarksgame 50000那个数据,又觉得不是。

 还望高手出招,测试,或给出建议。