はじめに
WASMatrix は AssemblyScript WebAssembly core に支えられた TypeScript 製 matrix library です。matrix buffer は WASM memory に保持され、f32 row-major storage を使い、WebAssembly SIMD を必須とします。
この guide では最初に必要になる内容を順に扱います:
- package の install
- matrix の作成
- matrix / elementwise / linear algebra operation の実行
- 必要な時だけ result を readback すること
- factorization cache と lazy view が効く場面の理解
インストール
npm install wasmatrix
WASMatrix は ESM-only です。package を import すると top-level await により隣接する WASM asset が初期化されます。
import Matrix from "wasmatrix";
package は JavaScript と WASM を別々に配布します。runtime は new URL("./wasmatrix.wasm", import.meta.url) で dist/wasmatrix.wasm を解決するため、Node、Deno、Bun、browser、CDN、bundler が通常の asset として扱えます。