Module Core_bench.Bench.Analysis_config

Each Analysis_config.t specifies a regression run by Core_bench. This module also provides several typical regressions that one might want to run.

type t
val create : responder:Variable.t ‑> predictors:Variable.t list ‑> ?⁠bootstrap_trials:int ‑> ?⁠r_square:bool ‑> ?⁠regression_name:string ‑> unit ‑> t
val with_error_estimation : ?⁠bootstrap_trials:int ‑> t ‑> t

For any analysis t, return a new t that includes error estimation

val nanos_vs_runs : t

nanos_vs_runs predicts nanos using runs. In this regression and all of the ones below, no error estimate is computed.

val cycles_vs_runs : t

cycles_vs_runs predicts cycles using runs.

val nanos : predictors:Variable.t list ‑> t

nanos ~predictors estimates nanos using specified predictors.

val cycles : predictors:Variable.t list ‑> t

similar to nanos

val allocations_vs_runs : t list

allocations_vs_runs estimates minor allocations, major allocations and promotoions in terms of runs and overhead.

val gc_vs_runs : t list

allocations_vs_runs estimates minor collections, major collections and compations in terms of runs.

val default : t list

A laundry list of several typical regressions: nanos_vs_runs, allocations_vs_runs and gc_vs_runs.