Dsxir.Optimizer.MIPROv2.Stats (dsxir v0.2.0)

Copy Markdown

Per-compile statistics returned from Dsxir.Optimizer.MIPROv2.compile/4.

Stores per-trial records, full-eval records, aggregate counters, and the program / dataset summaries used to ground the proposer. Informational only — does not feed back into runtime behaviour.

Persistence round-trip

When a compiled program is saved with Dsxir.save/2 and later restored with Dsxir.load/3, the stats are encoded into the artifact metadata under program.metadata["_miprov2_stats"]. The restored value is a plain string-keyed map (and :trials / :full_evals are plain maps too) — it is not rehydrated back into a %Dsxir.Optimizer.MIPROv2.Stats{} struct. This is symmetric with how compiled_with degrades to its raw atom representation when the optimizer module is not loaded at hydrate time.

Summary

Types

t()

@type t() :: %Dsxir.Optimizer.MIPROv2.Stats{
  best_config: map(),
  best_score: nil | float(),
  dataset_summary: nil | String.t(),
  degraded: boolean(),
  full_evals: [Dsxir.Optimizer.MIPROv2.Stats.Record.t()],
  program_summary: nil | String.t(),
  proposer_calls: non_neg_integer(),
  total_cached_calls: non_neg_integer(),
  total_task_lm_calls: non_neg_integer(),
  trials: [Dsxir.Optimizer.MIPROv2.Stats.Record.t()],
  wall_clock_ms: non_neg_integer()
}