微软表示 IE9 具有并行 Javascript 渲染和执行功能

2024-02-20

The new JavaScript engine takes advantage of multiple CPU cores through Windows to interpret, compile, and run code in parallel. - http://technet.microsoft.com/en-us/library/gg699435.aspx http://technet.microsoft.com/en-us/library/gg699435.aspx

and

The Chakra engine interprets, compiles, and executes code in parallel and takes advantage of multiple CPU cores, when available. - http://msdn.microsoft.com/en-us/ie/ff468705.aspx http://msdn.microsoft.com/en-us/ie/ff468705.aspx

等等,什么?!?这是否意味着我们在 IE9 中拥有多线程并行 JavaScript 代码执行(在 Web Workers 之外)?

我认为这只是一个糟糕的营销噱头,但希望看到更多相关信息。也许他们意味着不同的浏览器窗口/选项卡/进程可以利用多个 CPU?


结论主要基于评论,因此作为社区 wiki 答案提供,以便该问题最终得到实际答案:

微软的意思很可能是(i)解释和/或运行的单独任务; (ii) 编译并行进行。他们很可能已经应用了像 Sun 的旧 HotSpot JVM 这样的技术,以便 Javascript 虚拟机在第一个实例中解释代码,因为它可以立即开始执行此操作。它还会 JIT 编译任何看起来足够频繁使用的代码,这样做是有好处的。它甚至可能有不同级别的编译器优化,需要慢慢调整。在这种情况下,它可能会使用多个核心来解释或运行一个代码片段,同时还编译任意多个其他代码片段,甚至重新编译并更好地优化正在运行的同一代码片段。

但是,在技术层面上,您也可以执行静态分析来确定回调何时在状态方面相互独立,并允许这些回调在触发事件提示时并行执行。通过这种方式,Javascript 虚拟机实际上可以并行解释/运行代码,而不影响该语言的语义串行性质。这样的系统在逻辑上类似于超标量 CPU 的操作,尽管移除程度要大得多并且复杂性要高得多。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微软表示 IE9 具有并行 Javascript 渲染和执行功能 的相关文章

随机推荐