Asm.js 性能逼近原生码 - 开源中国社区
Asm.js 性能逼近原生码
oschina 2013年12月24日

Asm.js 性能逼近原生码

oschina oschina 发布于2013年12月24日 收藏 56 评论 32

阿里云高性能云服务器,2折起! >>> >>>  

Asm.js是JavaScript的高性能子集,简化特性便于优化。Mozilla现在宣布,asm.js性能进一步逼近原生,asm.js的速度已达到原生码的三分之二, 而以前只能达到二分之一甚至更低。Mozilla是通过改变浮点算法处理方式改进asm.js性能。

JavaScript默认使用float64数据类型,以提供最大的数据精度,但相比范围较小的int、int32、float和float32数据类型,float64的效率并不高,Mozilla的 SpiderMonkey引擎在asm.js中加入了float32数据类型,允许将C/C++程序中的float32算法直接翻译到asm.js的 float32算法。

asmjsperformance

Mozilla相信asm.js的性能还能进一步提升。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:Asm.js 性能逼近原生码
分享
评论(32)
最新评论
0

引用来自“我喜欢吴佳旻”的评论

是不是要赶紧学js啊

不用...arm.js只是一个js子集,基本上这东西都是别的编译器编译生成的,不回去手写。就像汇编代码一样,你平时常常写么?
0

引用来自“殊麒”的评论

引用来自“DogFeet”的评论

引用来自“ZeroOne”的评论

引用来自“郭煜”的评论

引用来自“se77en”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

你这么说让node.js情何以堪

node.js不可能超过静态编译后的速度的

怎么说呢,牛逼的动态虚拟机是可以强过蹩脚的静态编译器的。
你可以做一个实验去验证java的密集计算和一个已经落伍的老牌编译器生成的代码的执行速度。
你会大吃一惊的。

说的比唱的都还好听。
嗯,我们需要这个功能。嗯,这个功能好像也很酷,我们的语言也要加上。嗯,加上这个特性,我们语言的表述能力更强了。哇,有了这种语法后,程序简直太优雅了。
嗯,好像得将我们的解释器优化下了。嗯,厉害,我们修改xx部分后,性能提升了xx%。嗯,我们这里如果使用这种优化手段,性能又要提升xx%啦。
嗯,高效使用xx语言的十大准则,1.不要使用xx特性,2,不要使用xx特性,3,不要使用xx特性......
不如我们将本地代码翻译成咱们的xx语言执行吧。速度又会杠杠的。
---------------------------------------------------------------
JS已经被你们玩出花了啊,有木有。把java,c,c++,oc.....翻译成JS在浏览器中运行有木有。

这位老兄,你的这段描述,基本涵盖了OSC每天新闻的全部主题:)

应该是所有开发站点的新闻主题
0

引用来自“ksc”的评论

引用来自“殊麒”的评论

引用来自“blackshow”的评论

引用来自“ksc”的评论

我的理解是一个高标准的“js语法规范”,方便js引擎编译成原生的程序

4L的头像。。。。

OSC人不多,撞头像的不少,是不是说明兄弟们品味都类似啊。真的是好基友,在开源:)

好吧--!

好像尺寸...还是有差别的...
0

引用来自“blackshow”的评论

引用来自“ksc”的评论

我的理解是一个高标准的“js语法规范”,方便js引擎编译成原生的程序

4L的头像。。。。

有没有发现他的比你的大?
0
这东西看上去比V8性能还高
V8是JIT执行的,这个我感觉是个类似于LLVM的低级虚拟机
0

引用来自“DogFeet”的评论

引用来自“ZeroOne”的评论

引用来自“郭煜”的评论

引用来自“se77en”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

你这么说让node.js情何以堪

node.js不可能超过静态编译后的速度的

怎么说呢,牛逼的动态虚拟机是可以强过蹩脚的静态编译器的。
你可以做一个实验去验证java的密集计算和一个已经落伍的老牌编译器生成的代码的执行速度。
你会大吃一惊的。

说的比唱的都还好听。
嗯,我们需要这个功能。嗯,这个功能好像也很酷,我们的语言也要加上。嗯,加上这个特性,我们语言的表述能力更强了。哇,有了这种语法后,程序简直太优雅了。
嗯,好像得将我们的解释器优化下了。嗯,厉害,我们修改xx部分后,性能提升了xx%。嗯,我们这里如果使用这种优化手段,性能又要提升xx%啦。
嗯,高效使用xx语言的十大准则,1.不要使用xx特性,2,不要使用xx特性,3,不要使用xx特性......
不如我们将本地代码翻译成咱们的xx语言执行吧。速度又会杠杠的。
---------------------------------------------------------------
JS已经被你们玩出花了啊,有木有。把java,c,c++,oc.....翻译成JS在浏览器中运行有木有。

这位老兄,你的这段描述,基本涵盖了OSC每天新闻的全部主题:)
0

引用来自“DogFeet”的评论

引用来自“ZeroOne”的评论

引用来自“郭煜”的评论

引用来自“se77en”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

你这么说让node.js情何以堪

node.js不可能超过静态编译后的速度的

怎么说呢,牛逼的动态虚拟机是可以强过蹩脚的静态编译器的。
你可以做一个实验去验证java的密集计算和一个已经落伍的老牌编译器生成的代码的执行速度。
你会大吃一惊的。

说的比唱的都还好听。
嗯,我们需要这个功能。嗯,这个功能好像也很酷,我们的语言也要加上。嗯,加上这个特性,我们语言的表述能力更强了。哇,有了这种语法后,程序简直太优雅了。
嗯,好像得将我们的解释器优化下了。嗯,厉害,我们修改xx部分后,性能提升了xx%。嗯,我们这里如果使用这种优化手段,性能又要提升xx%啦。
嗯,高效使用xx语言的十大准则,1.不要使用xx特性,2,不要使用xx特性,3,不要使用xx特性......
不如我们将本地代码翻译成咱们的xx语言执行吧。速度又会杠杠的。
---------------------------------------------------------------
JS已经被你们玩出花了啊,有木有。把java,c,c++,oc.....翻译成JS在浏览器中运行有木有。

哈哈
0

引用来自“冰力”的评论

引用来自“ylmotol7”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

为啥要放弃,用着挺爽,个人感觉比ff好

Chrome 功能有些单薄,一些菜鸟用到是足够了。

菜鸟都是用工具的,特别是火狐这么牛逼的工具
0

引用来自“ylmotol7”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

为啥要放弃,用着挺爽,个人感觉比ff好

Chrome 功能有些单薄,一些菜鸟用到是足够了。
0

引用来自“ZeroOne”的评论

引用来自“郭煜”的评论

引用来自“se77en”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

你这么说让node.js情何以堪

node.js不可能超过静态编译后的速度的

怎么说呢,牛逼的动态虚拟机是可以强过蹩脚的静态编译器的。
你可以做一个实验去验证java的密集计算和一个已经落伍的老牌编译器生成的代码的执行速度。
你会大吃一惊的。

说的比唱的都还好听。
嗯,我们需要这个功能。嗯,这个功能好像也很酷,我们的语言也要加上。嗯,加上这个特性,我们语言的表述能力更强了。哇,有了这种语法后,程序简直太优雅了。
嗯,好像得将我们的解释器优化下了。嗯,厉害,我们修改xx部分后,性能提升了xx%。嗯,我们这里如果使用这种优化手段,性能又要提升xx%啦。
嗯,高效使用xx语言的十大准则,1.不要使用xx特性,2,不要使用xx特性,3,不要使用xx特性......
不如我们将本地代码翻译成咱们的xx语言执行吧。速度又会杠杠的。
---------------------------------------------------------------
JS已经被你们玩出花了啊,有木有。把java,c,c++,oc.....翻译成JS在浏览器中运行有木有。
0

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

为啥要放弃,用着挺爽,个人感觉比ff好
0
这是个好消息……又一次革命……如果一个比ANDROID开发还容易并且性能还不弱而且调试方便部署简单的平台……
0
第一个问题就是要解决弱类型.我看了一下自带的类库,基本上成了强类型的语言.
0

引用来自“ZeroOne”的评论

引用来自“郭煜”的评论

引用来自“se77en”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

你这么说让node.js情何以堪

node.js不可能超过静态编译后的速度的

怎么说呢,牛逼的动态虚拟机是可以强过蹩脚的静态编译器的。
你可以做一个实验去验证java的密集计算和一个已经落伍的老牌编译器生成的代码的执行速度。
你会大吃一惊的。

问题就在蹩脚两个字,在都可以优化的情况下,静态确实容易比动态语言生成更高效的代码。
0

引用来自“郭煜”的评论

引用来自“se77en”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

你这么说让node.js情何以堪

node.js不可能超过静态编译后的速度的

怎么说呢,牛逼的动态虚拟机是可以强过蹩脚的静态编译器的。
你可以做一个实验去验证java的密集计算和一个已经落伍的老牌编译器生成的代码的执行速度。
你会大吃一惊的。
0

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

口气这么大,我严重怀疑你对js的了解程度.
0
严重支持
0

引用来自“郭煜”的评论

引用来自“se77en”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

你这么说让node.js情何以堪

node.js不可能超过静态编译后的速度的

呵呵
0

引用来自“se77en”的评论

引用来自“冰力”的评论

早就应该放弃 Chrome 了,JS 应该是个开发人员都应该会的脚本吧。

Firefox 坚挺至今,终迎来 asm.js !!

你这么说让node.js情何以堪

node.js不可能超过静态编译后的速度的
0

引用来自“殊麒”的评论

引用来自“blackshow”的评论

引用来自“ksc”的评论

我的理解是一个高标准的“js语法规范”,方便js引擎编译成原生的程序

4L的头像。。。。

OSC人不多,撞头像的不少,是不是说明兄弟们品味都类似啊。真的是好基友,在开源:)

好吧--!
顶部