batch::DurationRecorder

The run time and the output size of each job type, learned from the runs that finished (work-placement §WPS-6).

Declared in src/libs/libbatch/batch/DurationRecorder.hpp
Group batch

Detailed description

The dispatcher records each run that ends Done: a run here with this node's CPU throughput, and a run on another node with that node's, from its advertisement. The solver then weighs a learned p50 and p90 in place of the declared estimate (`IBatchWorker::expectedRunMs`), scaled to the machine that is weighed.

The drift of each run goes to batch::DriftRecorder, and the learned durations are kept by batch::JsonDurationStore.

See also batch::PlacementSolver.

In this section