Skip to content

Logging

RoundPipe's logging features provide tools for monitoring pipeline scheduling and performance, helping developers understand model behavior and identify bottlenecks during training. Below are some of the logging-related features and configuration options.

ModelTimer.VERBOSE

roundpipe.ModelTimer.VERBOSE: bool = False

A class-level flag that controls whether ModelTimer prints per-layer timing updates to stderr after each iteration.

When set to True, after each iteration's timing events are processed, the timer prints one line per layer per action type (fwd, re, bwd) to stderr, showing both the newly recorded time and the current smoothed estimate.

Output format:

Layer {layer_idx} {action}  new record: {time:.3f} ms  new estimate: {time:.3f} ms

Example:

from roundpipe.timer import ModelTimer

ModelTimer.VERBOSE = True

After an iteration completes, output similar to the following will appear on stderr:

Layer 0 fwd  new record: 1.234 ms  new estimate: 1.200 ms
Layer 0 re   new record: 1.180 ms  new estimate: 1.150 ms
Layer 0 bwd  new record: 2.456 ms  new estimate: 2.400 ms
Layer 1 fwd  new record: 1.567 ms  new estimate: 1.530 ms
...

This is useful for debugging pipeline scheduling and identifying slow layers.