# Index of values

(@>) [Benchmark.Tree] | `name @> bench` returns a (named) node of the benchmark tree.
(@>>) [Benchmark.Tree] | `name @>> tree` makes `tree` accessible through the given `name`, i.e., prefix all paths in the tree by `name`.
(@>>>) [Benchmark.Tree] | `name @>>> l` is equivalent to `name @>> concat l`.
A
add [Benchmark] | `Benchmark.add b1 b2` add `Benchmark.t` structure `b1` to `b2`.
arg [Benchmark.Tree] | `arg ()` returns `(arg, specs)` where `arg` is a state coming from parsing the command line using `specs`.
C
concat [Benchmark.Tree] | Merge the given trees (recursively).
F
filter [Benchmark.Tree] | `filter p t` return the tree obtained by keeping all the paths in `t` that match the path `p`.
G
global [Benchmark.Tree] | Global tree, built from calls to `Benchmark.Tree.register`.
L
latency1 [Benchmark] | `Benchmark.latency1 ?min_cpu ?style ?fwidth ?fdigits n ?name f x` runs the function `f` with input `x` for `n` iterations, and returns the results, which are also printed unless `~style` is `Nil`.
latencyN [Benchmark] | `Benchmark.latencyN ?min_cpu ?style ?fwidth ?fdigits n funs` runs each function in list `funs` for `n` iterations.
M
make [Benchmark] | `Benchmark.make n` create a new `Benchmark.t` structure with current time values and `n` iterations.
merge [Benchmark] | `merge l1 l2` merges the two association lists of timings `l1` and `l2` into a single one, concatenating the timings for the same names of `l1` and `l2`.
P
parse_path [Benchmark.Tree] | Split a string into a path at the "." separators.
prefix [Benchmark.Tree] | Add the path as a prefix to the tree, similar to repeated calls to `@>>`.
print [Benchmark.Tree] | Print the tree of benchmarks (its structure) on the given formatter.
print_gc [Benchmark] | Print GC statistics.
print_path [Benchmark.Tree] |
R
register [Benchmark.Tree] | Register a benchmark to the global registry of benchmarks.
run [Benchmark.Tree] | `run t` runs all benchmarks of `t` and print the results to `fmt`.
run_global [Benchmark.Tree] | Same as `Benchmark.Tree.run` on the global tree of benchmarks and parsing the command line arguments from `argv` (which is `Sys.argv` by default).
S
sub [Benchmark] | `Benchmark.sub b1 b2` subtract `Benchmark.t` structure `b2` from `b1`.
T
tabulate [Benchmark] | `Benchmark.tablulate results` prints a comparison table for a list of `results` obtained by `Benchmark.latencyN` or `Benchmark.throughputN` with each function compared to all the others.
throughput1 [Benchmark] | `Benchmark.throughput1 ?min_count ?style ?fwidth ?fdigits t ?name f x` runs one function `f` with input `x` for at least `t` seconds, and returns the result, which is also printed unless `~style` is `Nil`.
throughputN [Benchmark] | `Benchmark.throughputN ?min_count ?style ?fwidth ?fdigits t funs` runs each function in list `funs` for at least `t > 0` seconds.
to_string [Benchmark] | `Benchmark.to_string ?style ?fwidth ?fdigits b` converts the `Benchmark.t` structure to a formatted string.
W
with_int [Benchmark.Tree] | `with_int f l` parametrize trees with several integer values (e.g.