bytecodealliance / bytecodealliance/ComponentizeJS
Example should have performance numbers and comparisons
- 主要言語
- Rust
- スター
- 391
- フォーク
- 53
- 平均マージ
- 3日 5時間
- マージ済み PR(30日)
- 1
説明
I'm doing some benchmarking, and while this might be apples to oranges,
1. Invoking quickjs as a wasmtime precompiled using `--eval console.log('hello world')` 1000 times takes approx 7-8s
2. Invoking the hello-world.js embedding in the example 1000 times takes approx 80s or maybe 10x as much time.
```
time for x in `seq 1 1000`; do wasmtime --allow-precompiled quickcheck.cwasm --eval "console.log('hello world')"; done
real 0m7.849s
user 0m3.077s
sys 0m6.752s
```
```
$ time for x in `seq 1 1000`; do ./target/release/wasmtime-test > /dev/null; done
real 1m21.672s
user 0m45.470s
sys 0m38.263s
```
Using `https://gitlab.com/api/v4/projects/47807501/packages/generic/js_interpreters/0.0.1/cweb_quickcheck.wasm` for the example.
It would be good to understand better what performance we can expect and how to benchmark against other options.
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
hello-world.js の embedding 例を確認し、issue で説明されている 2 つのタイミングコマンドを、事前コンパイル済みの quickcheck.cwasm との比較も含めて再現します。どの測定値を比較できるかを判断し、予想されるパフォーマンス値と、例の再現可能な比較方法を文書化します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- rust, wasm
- 領域
- documentation, performance
- issue の種類
- ドキュメント
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 35/100