Skip to main content

Module bench

Module bench 

Source
Expand description

stuffr bench: compares codecs on the user’s own files.

run wires the pieces together in order: expand the operands, check --formats, refuse a debug build, load and warm the input once, then measure every row strictly one after another (there is one process-wide signal-cleanup slot, so two measure calls must never overlap) and render the result.

Modules§

levels
The level table for stuffr bench: which codecs are benchmarked and which levels each one runs.
measure
The timing harness for stuffr bench: one format at one level, run over the user’s input, compressed and decompressed, with only codec work inside a timed region, except the temp file’s writes when the output is too large to keep in memory (below).
memory
Peak memory for stuffr bench, measured in untimed child processes.
report
Output renderers for stuffr bench: the human table (layout B), JSON and CSV. Pure formatting over already-measured rows; no timing happens here.
score
Scoring and winners for stuffr bench. Pure: no I/O, no timing.

Enums§

Ran
How a run that raised no error ended.

Constants§

DEBUG_REFUSAL
The refusal main prints, verbatim, for Ran::RefusedDebugBuild (exit 2). Not an Error::Usage, whose display would prefix “usage error:”.

Functions§

run
Runs stuffr bench. Usage problems are Error::Usage (exit 2); a format that fails is a failed row, never an error here.