peakmarkv0.1.1

Configuration

Every key of peakmark.toml.

peakmark.toml lists the modules, their budgets and their scenarios. Paths in it are relative to the file. Unknown keys are an error.

tolerance = "1%"

[[module]]
name     = "engine"
artifact = "pkg/engine_bg.wasm"
glue     = "pkg/engine.js"

[module.budget]
raw            = "500 kB"
gzip           = "200 kB"
brotli         = "170 kB"
peak_memory    = "26 MiB"
growth_per_run = "0"

[[scenario]]
module = "engine"
file   = "bench/pivot.mjs"
repeat = 5

Top level

Key Meaning
tolerance growth over the baseline below this fraction is not reported, "1%" by default

[[module]]

Key Meaning
name the name used in reports and by accept; each name once
artifact the .wasm file
glue optional: the wasm-bindgen JavaScript glue, loaded as an ES module
[module.budget] optional limits: raw, gzip, brotli, peak_memory, growth_per_run

Sizes take B, kB, MB, KiB or MiB; a plain number is bytes. A peak_memory or growth_per_run budget needs at least one scenario for the module.

[[scenario]]

Key Meaning
module the module it drives
file the ES module, see Writing a scenario
repeat how often the function runs, 1 by default, at least 1

Edit this page on GitHub · Docs for v0.1.1