View Source Beamchmark.Suite (Beamchmark v1.4.1)

The module defines a struct representing a single run of benchmark. It is also responsible for running the benchmark and saving/loading the results.

The results are serialized and stored in output_dir / scenario name / delay_duration directory, where scenario name is the name of module implementing scenario (without separating dots) and output_dir, delay, duration are fetched from the suite's configuration.

Link to this section Summary

Link to this section Types

@type t() :: %Beamchmark.Suite{
  configuration: Beamchmark.Suite.Configuration.t(),
  measurements: Beamchmark.Suite.Measurements.t() | nil,
  scenario: Beamchmark.Scenario.t() | nil,
  system_info: Beamchmark.Suite.SystemInfo.t()
}

Link to this section Functions

@spec init(Beamchmark.Suite.Configuration.t()) :: t()
Link to this function

init(scenario, configuration)

View Source
@spec run(t()) :: t()
@spec save(t()) :: :ok
@spec try_load_base(t()) :: {:ok, t()} | {:error, File.posix()}