|
| 1 | +# Benchmark tracking configuration. |
| 2 | +# |
| 3 | +# Each variant is passed to Criterion with `--exact`, so names must match the full benchmark name |
| 4 | +# printed by `cargo bench -- --list` or `cargo bench -- --output-format bencher`. |
| 5 | +# |
| 6 | +# Add one `[[packages]]` table per Cargo package/feature configuration. The same package may appear |
| 7 | +# multiple times with different `cargo_flags`, for example to run storage benchmarks with and |
| 8 | +# without io_uring. When doing this, set a distinct `baseline_suite` for each feature |
| 9 | +# configuration so results are matched against the correct main-branch baseline. |
| 10 | +# |
| 11 | +# Thresholds can be set globally with `default_threshold_percent`, per package, per benchmark, or |
| 12 | +# per variant table. More specific settings override less specific settings. |
| 13 | +# |
| 14 | +# Variants may be specified as strings: |
| 15 | +# |
| 16 | +# variants = ["crate::bench/key=value"] |
| 17 | +# |
| 18 | +# or as tables when per-variant overrides are needed: |
| 19 | +# |
| 20 | +# [[packages.benchmarks.variants]] |
| 21 | +# name = "crate::bench/key=value" |
| 22 | +# threshold_percent = 20.0 |
| 23 | +# |
| 24 | +# Example duplicate package configuration: |
| 25 | +# |
| 26 | +# [[packages]] |
| 27 | +# name = "commonware-storage" |
| 28 | +# baseline_suite = "commonware-storage" |
| 29 | +# cargo_flags = ["--features", "test-traits"] |
| 30 | +# |
| 31 | +# [[packages.benchmarks]] |
| 32 | +# name = "qmdb" |
| 33 | +# variants = ["qmdb::merkleize/variant=... keys=10000 ch=false sync=false"] |
| 34 | +# |
| 35 | +# [[packages]] |
| 36 | +# name = "commonware-storage" |
| 37 | +# baseline_suite = "commonware-storage-iouring" |
| 38 | +# cargo_flags = ["--features", "commonware-runtime/iouring-storage,test-traits"] |
| 39 | +# |
| 40 | +# [[packages.benchmarks]] |
| 41 | +# name = "qmdb" |
| 42 | +# variants = ["qmdb::merkleize/variant=... keys=10000 ch=false sync=false"] |
| 43 | + |
| 44 | +default_threshold_percent = 10.0 |
| 45 | + |
| 46 | +[[packages]] |
| 47 | +name = "commonware-storage" |
| 48 | +cargo_flags = ["--features", "test-traits"] |
| 49 | + |
| 50 | +[[packages.benchmarks]] |
| 51 | +name = "qmdb" |
| 52 | +criterion_args = ["--sample-size", "100", "--significance-level", "0.01"] |
| 53 | +variants = [ |
| 54 | + "qmdb::merkleize/variant=any::unordered::fixed::mmr keys=10000 ch=false sync=false", |
| 55 | + "qmdb::merkleize/variant=current::ordered::fixed::mmb chunk=256 keys=10000 ch=true sync=false", |
| 56 | +] |
0 commit comments