tvix: add criterion bench for nixpkgs eval
We already have some very small benches in tvix/eval/benches/eval.rs
, but we should probably have a bigger benchmark for something like evaluating a certain attribute from a pinned nixpkgs checkout (peek in tvix/cli/default.nix
for what we can do right now).
We /might/ need to find a way to prevent filesystem IO to get too much in our way for that benchmark, if the warmup that criterion does is not sufficient.
One way could be to write a cache layer implementing EvalIO
(from eval/src/io.rs
), and using that, so .nix
files are only loaded from disk once (during warmup).
Writing a criterion bench for anything in tvix-cli is currently quite challenging, opened b/327 for splitting out glue code.
flokli at 2023-10-19T11·46+00
Landed in cl/10245.
flokli at 2023-12-12T18·08+00
- flokli closed this issue at 2023-12-12T18·08+00