IE和Chrome都将支持asm.js

根据modern.IE平台上的状态显示,asm.js正处于开发阶段按照微软的说法,在Windows 10中所使用的Chakra引擎将支持asm.js,并且微软正与Mozilla进行合作,以争取尽快实现它。Chrome刚将通过TurboFan这一在V8上经过优化的编译器提供对asm.js的支持。\

微软表示,用户通过IE平台建议箱表达了他们的渴望,这正是微软最终决定支持asm.js的主要原因之一。这一原本来自于Mozilla的技术目前在用户对IE的新特性请求列表中排在第五位,但讽刺的是,建议使用Blink引擎取代Trident引擎的请求却排名期望新特性列表中的第三位,而建议使用Dart VM的建议排名第八。不过用户的这些期望是不可能全部得到满足的,至少现在是不可能的,因为微软最近已经宣布了Spartan项目的成立,而不打算使用Blink引擎。\

在2013年,Mozilla和Epic Games决定通过asm.js的方式让虚幻引擎(Unreal Engine)得以在浏览器中运行。当时,有一位Chromium团队的成员为V8引擎提交了一个issue #2599,它是一个让Chrome能够支持asm.js的特性请求。这个issue很长一段时间以来一直处于休眠状态,但最近它的状态突然改变为已分派,将通过TurboFan这个新的V8引擎优化编译器得以实现。V8团队在去年的晚些时候开始实现这一功能,但它在最近的Chrome 41中已经成为Beta版本,根据V8团队的技术领导Ben Titzer所说:\

\

我们已经对Chrome 41中的TurboFan进行了Beta测试,这一版本极大地提高了各种数值运算代码的性能,例如asm.js。由于我们还将进行更多的探索性尝试和优化,因此我们犹豫着是否要将该issue[#2599]关闭为“已修复”状态,但大家可以认为这个issue的状态属于“基本已修复”了。\

我们正在积极地尝试启动TurboFan的各种策略,其中一个信号是“use asm”指令。作为对#73 w.r.t. AOT的回应:目前在V8中使用TurboFan时并不会一次性编译整个完整的asm.js模块。

\

asm.js提供了一种让由C、C++或其它语言编写的原生代码在浏览器端运行的途径。asm.js中包含了JavaScript的一个严格子集 —— 包括严格类型的整数、浮点数、数值计算、函数调用和堆访问,这将对速度起到优化作用。asm.js也在密切关注着PNaCI的发展情况,后者是Google对于在浏览器中运行原生代码的一个解决方案。起初,PNaCI的性能表现比asm.js更为出色,但最近一段时间以来,我们都没有听说它的任何进展情况。\

在这篇InfoQ新闻中,可以找到更多与asm.js和PNaCI相关的内容。\

查看英文原文:Both IE and Chrome Are to Support asm.js

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值