カテゴリ : プログラミング
タイトル : JavaScriptでC/C++コードを実行してネイティブアプリのように高速にする [WebAssembly]
キーワード(keywords) : WebAssembly,使い方,malloc,共有,メモリ
解説(description) : HTML5の「WebAssembly」を使用するとJavaScriptの実行速度をネイティブアプリのように高速にできます。主な対象は画像、音声、動画処理などの重たい演算処理です。重たい処理をC/C++やRustのコードで作成後にEmscriptenやWebAssembly Studioで中間言語(*.wasm)にコンパイル・・・
HTML5の「WebAssembly」を使用するとJavaScriptの実行速度をネイティブアプリのように高速にできます。主な対象は画像、音声、動画処理などの重たい演算処理です。
重たい処理をC/C++やRustのコードで作成後にEmscriptenやWebAssembly Studioで中間言語(*.wasm)にコンパイルします。
[WebAssembly Studio]
ブラウザでページが表示される時にJavaScriptの指示で中間言語を更にコンパイルして実行します。JavaScriptとはメモリの共有で連携が取れます。
ちなみに私はWebAssemblyの事をインラインアセンブラのように「インラインC言語」と呼んでいます。また、最新技術なのでIE11は動作しませんがモダンなChrome/FireFox/Edgeなどは対応しています。
WebAssemblyの使い方は後述します。