LeveledMetrics#
Metrics of a leveled stage, plus a summary of the leveling run that produced it. It's returned in CandidateResult::leveled by Project::evaluate and Project::evaluate_with, and in SuggestProposal::leveled by Project::suggest_assignments. It isn't built by hand.
For when those fields are Some, see CandidateResult and SuggestProposal.
Declaration#
LeveledMetrics doesn't implement Default. With the serde feature it implements Serialize and Deserialize with camelCase field names, and metrics is flattened: finish, overload, conflicts, cycles and cost sit next to converged, rounds and windows.
Fields#
| Name | Type | Description |
|---|---|---|
metrics |
Metrics |
Finish, overload, conflicts, cycles and cost of the leveled stage. |
converged |
bool |
Whether the planner reached a fixed point in the final run after leveling, the same value as ScheduleResult::converged of that run. |
rounds |
u32 |
Leveling rounds that proposed a correction, as in LevelingResult::rounds. |
windows |
u32 |
Overallocation windows left after leveling, summed over all resources and counted whatever their reason. 0 when no overallocation is left. See OverallocationWindow. |
Example#
ann has two 3-day tasks at the same time. The plan is scored as is with leveling on, and the leveled stage is printed.
use ;
Related#
CandidateResult- carries it for the leveled stage of a candidateEvaluateOptions-levelturns on the leveled stageLevelingResult- the full result of a committed leveling run- Evaluating Alternatives - how the leveled stage compares with the scheduled one