steady_state
steady_state
¶
Steady-state detection for energy measurement at thermal equilibrium.
Classes¶
SteadyStateConfig
dataclass
¶
SteadyStateConfig(warmup_samples: int = 5, window_size: int = 5, cv_threshold: float = 0.05, min_steady_samples: int = 3, metric: str = 'throughput')
Configuration for steady-state detection.
SteadyStateResult
dataclass
¶
SteadyStateResult(total_samples: int = 0, warmup_samples: int = 0, steady_state_samples: int = 0, steady_state_reached: bool = False, warmup_throughputs: List[float] = list(), warmup_energies: List[float] = list(), steady_throughputs: List[float] = list(), steady_energies: List[float] = list())
Result of steady-state detection.
SteadyStateDetector
¶
SteadyStateDetector(config: SteadyStateConfig | None = None)
Detect steady state using coefficient of variation over a sliding window.
The first warmup_samples recordings are always classified as warmup.
After warmup, the CV (stdev / mean) of the last window_size values is
checked. When CV < cv_threshold for min_steady_samples consecutive
checks, steady state is declared.
Source code in src/openjarvis/telemetry/steady_state.py
Attributes¶
Functions¶
record
¶
Record a sample. Returns True when steady state is reached.