IEとChromeがasm.jsをサポート
modern.IE Platform Statusによると、現在asm.jsは、開発中になっている。 Microsoftによると、Windows 10のChakraエンジンはasm.jsをサポートし、Microsoftはそれを高速化するためにMozillaと協力してきた。ChromeはV8の新しい最適化コンパイラであるTurboFanを通じて、これをサポートする予定である。
Microsoftは、IE Platform Suggestion Boxを通じて寄せられたユーザーの要望が、asm.jsをサポートすることになった主な理由のひとつである。 Mozillaの技術は現在、IEの機能要望の5位であるが、皮肉なことにTridentの代わりにBlinkを利用する提案は3位であり、Dart VMは8位である。しかし、ユーザーは望むことをすべて得られるわけではなく、Microsoftは先日Blinkを使う代わりにSpartanを発表した。
MozillaとEpic Gamesは、2013年にasm.jsを通じてブラウザーでUnreal Engineを実行することを決めたとき、ChromiumチームメンバーはChromeでasm.jsをサポートするための機能要求として、V8にIssue #2599をオープンした。このIssueは長い間休眠していたが最近、TurboFanと呼ばれる新しいV8最適化コンパイラーを通じて解決するためにAssignedに移行した。V8チームの技術リードBen Titzer氏によると、V8チームは、昨年作業を始めたが、先日Chrome 41のベータに入ったという:
私たちは、asm.jsのような数値コードのパフォーマンスを大幅に向上させるChrome 41のTurboFanをすでにテストしています。これには追加のヒューリスティックと最適化があり、[#2599]のIssueを"完了"としてクローズするのに躊躇していますが、このIssueは"概ね完了"しています。
私たちは積極的にTurboFanを活性化するための方針を実験しており、"use asm"ディレクティブはひとつのシグナルです。#73 w.r.t. AOTに応じて、現在のV8は、asm.jsモジュール全体をコンパイルするTurboFanは使用していません。
asm.jsは、C、C++やその他の言語で書かれたネイティブコードをブラウザーで実行する手段を提供する。asm.jsには、スピードが最適化されたJavaScriptの厳格なサブセット;–厳格に型付けされた整数、浮動小数点数、算術、関数呼び出し、ヒープアクセス-が含まれている。これは、Googleのブラウザー上でネイティブコードを実行するソリューションであるPNaClがどうなるのかも気にかかる。当初、PNaClはasm.jsを上回っていたが、最近はあまり聞くことがなくなった。
asm.jsとPNaClについては、このInfoQのストーリーを読んで欲しい。
特集コンテンツ一覧
実例で学ぶGS Collections – Part 2
Donald Raab 2014年11月20日 午後8時3分
実例で学ぶGS Collections – Part 1
Donald Raab 2014年10月23日 午前2時24分
プロジェクトインセプション - 協力体制を作るミーティングの方法
James Bayer 2014年10月14日 午後7時57分
カンバンはどのように動作するか
Amr Noaman Abdel-Hamid 2014年9月7日 午後7時43分
自己組織化チームはなぜ必要か?
Sigi Kaltenecker and Peter Hundermark 2014年8月31日 午前2時2分
効果的なテストの文化を創る
Wes McClure 2014年8月31日 午前1時54分
こんにちは
コメントするには InfoQアカウントの登録 または ログイン が必要です。InfoQ に登録するとさまざまなことができます。アカウント登録をしてInfoQをお楽しみください。
あなたの意見をお聞かせください。