step ·

Step-Resolved Plotting

Plotting a run against the steps it actually ran beats plotting against wall-clock time.

By Blankplots Team · 2 min read

On This Page

The default way to plot a run is against wall-clock time: pick a column, pick a trace, and let the x-axis be whatever timestamps the log recorded. It works, and it is also the wrong axis for almost every comparison that matters, because wall-clock time encodes how long a run took, not what the run did.

The Timing Noise Problem

A recipe is a sequence of named steps. Two runs of the same recipe rarely take the same amount of time to get through each step — a pump might settle a few seconds faster, a soak might run a touch longer, a retry might insert a step that didn't happen the first time. Plot both runs against wall-clock time and their step boundaries land at different x-positions, so a column that looks perfectly aligned in one run looks offset or smeared in the other. The difference you're looking at is timing noise, not a real deviation in the column.

Fixing The Axis

Step-resolved plotting fixes the axis instead of the eye. Once a run has been split into the steps the tool actually ran — not the steps the recipe file claims to have, but the ones that actually executed, in order, with real start and end times — a trace can be re-expressed against step position and, within a step, against a normalized fraction of that step's duration. Two runs of the same recipe now land on the same axis regardless of how long each step individually took. A column that drifts consistently at the start of a particular step shows up as a consistent feature at the same x-position across every run, instead of scattered across a range of wall-clock offsets.

What Changes For Collection Windows

This also changes what a collection window means. A collection window is a narrowed sub-interval of a step — say, the last third of a soak step, where a column is expected to have stabilized. Defined against wall-clock time, that window has to be re-computed by hand for every run with a different step duration. Defined against step-relative position, it is the same window every time, and it travels with the recipe rather than with any one run's timing.

Where Wall-Clock Time Still Fits

None of this requires discarding wall-clock time — it's still there, still useful for looking at absolute duration or scheduling. But for the specific job of comparing a column across runs, or spotting where in a step a column started to move, step position is the axis that actually matches what changed. Wall-clock time answers "when did this happen." Step-resolved plotting answers "where in the recipe did this happen" — and that is almost always the question being asked.

Continue Reading

All posts →