8018313b68
This adds a criterion.rs-based testbench into tvix-glue. It can be invoked by running `cargo bench` from inside the `tvix-glue` crate. `target/criterion/report/index.html` contains nice graphs. It's able to diff against the previous run, so you can invoke `cargo bench` before and after a certain change to reason about the impact in evaluation performance. Currently, we need to create a bunch of Evaluator resources inside the benchmark loop itself, which is a bit annoying, as it leaks into the things we benchmark. This should become better with b/262. Fixes b/322. Change-Id: I91656a308887baa1d459ed54d58baae919a4aaf2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/10245 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
27 lines
653 B
TOML
27 lines
653 B
TOML
[package]
|
|
name = "tvix-glue"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
|
|
[dependencies]
|
|
nix-compat = { path = "../nix-compat" }
|
|
tvix-build = { path = "../build", default-features = false, features = []}
|
|
tvix-eval = { path = "../eval" }
|
|
tvix-castore = { path = "../castore" }
|
|
tvix-store = { path = "../store", default-features = false, features = []}
|
|
bytes = "1.4.0"
|
|
tracing = "0.1.37"
|
|
tokio = "1.28.0"
|
|
thiserror = "1.0.38"
|
|
|
|
[dependencies.wu-manber]
|
|
git = "https://github.com/tvlfyi/wu-manber.git"
|
|
|
|
[dev-dependencies]
|
|
criterion = { version = "0.5", features = ["html_reports"] }
|
|
lazy_static = "1.4.0"
|
|
test-case = "2.2.2"
|
|
|
|
[[bench]]
|
|
name = "eval"
|
|
harness = false
|