BT

Your opinion matters! あなたのご意見でInfoQが変わる!

WebKitがWebAssemblyを完全にサポートした

| 作者: Abel Avram フォローする 4 人のフォロワー , 翻訳者 阪田 浩一 フォローする 0 人のフォロワー 投稿日 2017年6月18日. 推定読書時間: 2 分 |

あなたのリクエストに応じて、ノイズを減らす機能を開発しました。大切な情報を見逃さないよう、お気に入りのトピックを選択して、メールとウェブで通知をもらいましょう。

原文(投稿日:2017/06/10)へのリンク

AppleのSafariはWebAssemblyを完全にサポートした。これは将来のECMAScriptモジュールとスレッドの統合準備も含んでいる。

AppleはWebKitにWebAssemblyの完全なサポートを追加し、Safariが他言語で書かれたコードを実行できるよう拡張している。WebKitはWebAssemblyをx86とx64、ARM 64プラットフォームでサポートする。

WebAssemblyはブラウザ内でJavaScriptとして使えるので、WebKitはそれを動作させるために既存のJavaScriptの機能を再利用している。たとえば、WebAssembly.Instance APIはブラウザですでにサポートされているECMAScriptモジュールを使って実装されている。それが要望されている機能となったときの、JavaScriptモジュールとの統合手段を準備している。また、WebAssemblyのWebKitでの実装はスレッドのサポートを追加するときの準備のためにスレッドセーフとなっている。この機能はChromeもロードマップに持っている。

ツールがコードをWebAssemblyにコンパイルするとき、さまざまなパフォーマンスの最適化をすでにやっている。しかしWebKitはもう2つ最適化の層を追加する。即時バイトコード構築(BBQ)と最適化された機械語ジェネレータ(OMG)だ。両者ともB3 JITをベースにしている。これはWebKitがJavaScriptコードを調整するために使っているものだ。AppleのエンジニアによるとBBQはOMGより4倍速いが、生じたコードは2倍遅い。BBQはすばやくコードを実行するために使い、OMGはホットコードに使う。後者は速度が重要なコード部分へより深い最適化を実行する。

WebAssemblyはSafari Technology Previewのリリース32で利用できる。ChromeとFirefoxは3月にWebAssemblyの完全なサポートを追加した。Microsoft Edgeは全プラットフォームのプレビューモードにWebAssemblyがある。デスクトップとモバイル、Xbox、複合現実向けだ。

 
 

Rate this Article

Adoption Stage
Style
 

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT