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

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

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

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

benchmarks提供了jsv8的正则表达式测试代码,很有代表性,它的性能超过了所有语言。

regex-dna benchmarksgame的数据(CPU: Core2 Q6600)

 N  CPU secs Elapsed secs Memory KB Code B ≈ CPU Load
50,000 0.05 0.05 ? 373   17% 0% 0% 100%
500,000 0.35 0.39 264 373   5% 0% 0% 100%
5,000,000 3.29 3.30 484,640 373   0% 1% 1% 100%

regex-dna Windows JSRT的测试结果(CPU: I3-3240)

 N  Elapsed secs Memory KB
50,000 0.036 49,400
500,000 0.42 73,300
5,000,000 4.27 403,900

根据benchmarksgame的描述,此测试源文件是fasta程序的输出文件。

分析regex-dna测试结果,可以看到JSRT在大数据量正则处理方面稍微弱于JSV8,但高于C++(G++)。在50000这个低档测试中JSRT的性能要好于JSV8.

binary-tree benchmarksgame的数据(CPU: Core2 Q6600)

 N  CPU secs Elapsed secs Memory KB Code B ≈ CPU Load
12 0.07 0.09 ? 467   89% 22% 13% 100%
16 1.31 1.31 56,752 467   9% 3% 3% 100%
20 42.55 42.63 763,160 467   0% 0% 1% 100%

binary-tree Windows JSRT的测试结果(CPU: I3-3240)

 N  Elapsed secs Memory KB
12 0.06 44,400
16 1.01 76,000
20 24.57 442.600

分析binary-tree测试结果,JSRT全面超越JSV8的性能。

以上测试是在两款不同CPU上进行,所以难免有误差。

关于谷歌JSV8与微软JSRT的性能比较的更多相关文章

  1. Windows桌面或服务器环境下嵌入JavaScript支持(JSRT)

    很多人比较关注Google的JS V8 JavaScript引擎,确实Google最近很高调.但这个库在Windows下使用确实有点难度,即使在Linux嵌入,也需要下载gyp,编译安装,然后再下载v ...

  2. CSS性能分析,如何优化CSS提高性能

    不负十年后的自己,共勉! 前端性能优化一直是一个比较热门的话题,我们总是在尽我们最大的努力去,提高我们的页面性能,比如减少HTTP请求,利用工具对资源进行合并压缩,脚本置底,避免重复请求,css sp ...

  3. 微软Azure云主机测试报告

    http://www.cnblogs.com/sennly/p/4135658.html 1. 测试目的 本次测试的目的在于对微软云主机做性能测试,评估其是否能够满足我们业务的需求. 2. 测试项目 ...

  4. 谷歌 google

    google Google是搜索引擎名,也是一家美国上市公司名称.Google公司于1998年9月7日以私有股份公司的形式创立,以设计并管理一个互联网的搜索引擎.Google公司的总部称作“Googl ...

  5. 微软收购跨平台移动开发公司Xamarin

    摘要:北京时间2月25日早间消息,微软周三宣布收购创业公司Xamarin,这也是该公司为了吸引更多软件工程师为其云计算服务编写程序而采取的最新举措.古斯里表示,总部位于旧金山的Xamarin创立于20 ...

  6. 浏览器上写代码,4核8G微软服务器免费用,Codespaces真香

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 一图胜千言 先上图,下面是欣宸在自己的iPad Pro ...

  7. .net core 抛异常对性能影响的求证之路

    一.前言 在.net 社区中曾经听到过很多关于大量抛异常会影响性能这样的结论,心中一直就存在各种疑问.项目中使用自定义异常来处理业务很爽,但是又担心大量抛业务异常存在性能问题. 查阅了各种文档,微软官 ...

  8. .NET性能系列文章二:Newtonsoft.Json vs. System.Text.Json

    微软终于追上了? 图片来自 Glenn Carstens-Peters Unsplash 欢迎来到.NET性能系列的另一章.这个系列的特点是对.NET世界中许多不同的主题进行研究.基准和比较.正如标题 ...

  9. AngularJs指令(一)

    AngularJs应用现在越来越流行了,谷歌都与微软合作支持AngularJS2.0,这是要逆天了,说明AngularJs将来大势所趋.最近想跳槽,又重新拾起了AngluarJs(之前由于缺少项目应用 ...

随机推荐

  1. Zabbix系列之五——监控TCP端口

    监控端口的几个主要Keys: net.tcp.listen[port] Checks if this port is in LISTEN state. 0 - it is not, 1 - it is ...

  2. Python实现随机漫步

    随机漫步生成是无规则的,是系统自行选择的结果.根据设定的规则自定生成,上下左右的方位,每次所经过的方向路径. 首先,创建一个RandomWalk()类和fill_walk()函数 random_wal ...

  3. python 分享一个通过 (key1.key2.key3) 形式获取嵌套字典值的方法

    最近在做接口自动化测试,响应的内容大多数是多层嵌套的json数据,如果一层层的去剥,效率不高,脚本繁重,所以写了一个可以通过(key1.key2.key3)形式获取嵌套字典值的方法,如有不对或者需要优 ...

  4. mysql 更新语句中加判断条件

    UPDATE loan_overdue_list l setl.type_status=(CASE WHEN l.overdue_days>(select c.overdue_one from ...

  5. Mybatis学习(三)————— 映射文件详解

    前面说了全局配置文件中内容的详解,大家应该清楚了,现在来说说这映射文件,这章就对输入映射.输出映射.动态sql这几个知识点进行说明,其中高级映射(一对一,一对多,多对多映射)在下一章进行说明. 一.输 ...

  6. Python和Java编程题(六)

    1.题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第10天早上想再吃时, ...

  7. 分布式系统监视zabbix讲解七之分布式监控--技术流ken

    分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...

  8. (1)编译安装lamp三部曲之apache-技术流ken

    简介 采用yum安装lamp简单,快捷,在工作中也得到了普遍应用.但是如果我们需要某些特定模块功能,以及制定安装位置等,就需要用到编译安装了,接下来将编译安装lamp之apache. 系统环境及服务版 ...

  9. Docker在Linux上运行NetCore系列(四)使用私有Nuget与多个本地包引用运行ASPNetCore

    转发请注明此文章作者与路径,请尊重原著,违者必究. 本篇文章演示了使用Dockerfile在Linux(ubuntu16.04)系统上构建ASPNetCore应用,并且在一个解决方案中存在多个项目之间 ...

  10. MVC学习之路(1) EF 增删查改合集

    首先再Model中创建一个类[WMBlogDB] public class WMBlogDB : DbContext { //连接字符串. public WMBlogDB() : base(" ...