WasmでJavaScriptを動かす意義
SRANK

ある時Twitterのタイムラインを見ていたら、「JavaScriptをWasm化して動かす意味がわからない」というような意見を見かけました。JavaScriptはブラウザに搭載されているV8のようなJavaScriptエンジンによって高速に動作するのに、わざわざWasm化してもパフォーマンスは劣化するのになぜなのか?という話なんですが、これは「Wasm化=パフォーマンスのため」という考えだと意義がわからないのでこの記事ではそれについて解説します。JavaScriptをWasm化して動かすツールやライブラリとしては、Shopifyが開発しているJavyやquickjs-emscriptenなどがあります。JavaScriptをWasm化して動かすためには、ある特定のJavaScriptエンジンをWasm向けにビルドして動かす必要がありますが、そのような用途ではQuickJSというJavaScript処理系がよく使われています。QuickJSには、ブラウザに搭載されているJavaScriptエンジンとは違って、高速化のためのJITコンパイラのような上等な物は搭載されていませんが、それよりもアプリケーションに埋め込んで使いやすいように小さなサイズに収めているのが特徴のJavaScript処理系です。QuickJSのウェブサイトに載ってるベンチマークを見てみると、C…

blog.anatoo.jp
Related Topics: JavaScript WebAssembly
1 comments