2 个版本

使用旧的 Rust 2015

0.2.1 2019年10月18日
0.2.0 2019年10月18日

#381 in 性能分析

每月 30 次下载
用于 bevy_pkv

MIT/Apache 协议

19KB
106

这是 easybench 的 wasm32 浏览器友好版本

这是一个轻量级的基准测试库,

  • 使用线性回归来筛选掉恒定误差的来源;
  • 处理需要修改某些状态的基准测试;
  • 具有非常简单的 API!
use web_sys::console;
use easybench_wasm::{bench,bench_env};

// Simple benchmarks are performed with `bench`.
console::log_1(&format!("fib 200: {}", bench(|| fib(200) )).into());
console::log_1(&format!("fib 500: {}", bench(|| fib(500) )).into());

// If a function needs to mutate some state, use `bench_env`.
console::log_1(&format!("reverse: {}", bench_env(vec![1,2,3], |xs| xs.reverse())).into());
console::log_1(&format!("sort:    {}", bench_env(vec![1,2,3], |xs| xs.sort())).into());

运行上述代码将得到以下结果

fib 200:         38 ns   (R²=1.000, 26053498 iterations in 155 samples)
fib 500:        109 ns   (R²=1.000, 9131585 iterations in 144 samples)
reverse:          3 ns   (R²=0.998, 23684997 iterations in 154 samples)
sort:             3 ns   (R²=0.999, 23684997 iterations in 154 samples)

许可证

根据以下之一许可:

任选其一。

贡献

除非你明确声明,否则任何有意提交给作品并由你定义的 Apache-2.0 许可证所包含的贡献,都应如上所述双许可,没有任何附加条款或条件。

依赖项

~6.5–9MB
~172K SLoC