1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

科技 Mozilla:Asm.js性能愈加逼近原生码_cnBeta.COM 移动版

Discussion in '新闻聚焦' started by 漂亮的石头, 2013-12-25.

  1. 漂亮的石头

    漂亮的石头 版主 Staff Member

    Joined:
    2012-02-10
    Messages:
    488,439
    Likes Received:
    48
    Mozilla的asm.js是JavaScript的一个高性能(严格)子集,因此Firefox能够比执行常规的JavaScript代码运行得更快。得益于内建到Firefox的JavaScript引擎(OdinMonkey),asm.js代码已经在3月份实现了大约1/2的原生速度(native speed)。而最新的消息是,该组织宣布——其现在运行大多数基准测试的的速度,已达到原生码的2/3(甚至更好)了。

    [​IMG]

    与Mozilla的做法不同,Google将赌注压在了本地客户端(Native Client)上,以使得web应用能够在浏览器中执行原生编译的代码。而Mozilla也在努力让JavaScript运行于原生速度。

    尽管两者着手的角度不同,但无论是Google的Native Client、还是Mozilla的Emscripten LLVM-to-JavaScript编译器,两者都允许开发者使用C或C++代码,并在浏览器中运行。


    Engineering teams at Mozilla and Epic ported Unreal Engine 3 to the Web

    鉴于大多数游戏引擎都是用C或C++编写的,asm.js在大部分时候也将重心放在了游戏这块。事实上,在今年3月份的时候,Mozilla就为大家带来了《虚幻3》引擎的免插件演示(Firefox移植版),效果相当给力。

    Mozilla的Alon Zakai和Robert Nyman最近宣布,团队通过asm.js和Emscripten编译器上一些小的增量变化,实现了2/3的性能。当然,部分也要归功于Firefox JavaScript引擎的改进。

    [​IMG]

    Zakai和Nyman指出:具体说来,Firefox已经对一些会导致"大量明显变化"(substantial speedups)的浮点操作进行了优化。而Mozilla亦通过clang和gcc本地编译代码的方式衡量了asm.js的性能,并将之与通过Emscripten和asm.js运行相同代码的结果进行了比较(见上图)。

    目前看来,asm.js仍然是一个Mozilla项目。不过Chrome和Opera亦表示了将为asm.js进行优化,只是时间上可能不会那么快。值得一提的是,尽管asm.js代码可以在当前任何的JavaScript引擎上运行,但是肯定不会比Firefox运行得更快。

    相关新闻:

    Firefox Nightly迎来OdinMonkey 可接近原生速度运行JavaScript [2013-03-22]

    [视频]无需插件:《虚幻3》引擎已成功移植到Firefox浏览器 [2013-03-28]

    asm.js:Mozilla在Web上实现接近原生的性能 [2013-05-23]

    [编译自:TechCrunch , 来源:Mozilla , via:Solidot]
     
Loading...