PAOFLOW.transport.utils.timing#
Attributes#
Classes#
A high-resolution timing utility for measuring execution durations. |
|
A timing manager that tracks multiple named clocks. |
Functions#
|
Decorator to automatically time a function using global_timing. |
Module Contents#
- class PAOFLOW.transport.utils.timing.Clock(name)[source]#
A high-resolution timing utility for measuring execution durations.
- Parameters:
name (str) – Descriptive name of the timed routine or block.
- Variables:
Notes
Uses perf_counter for high-precision timing.
- stop()[source]#
Stop the timer and update total accumulated time. Raises an error if the timer was never started.
- class PAOFLOW.transport.utils.timing.TimingManager[source]#
A timing manager that tracks multiple named clocks.
- Variables:
clocks (OrderedDict) – Dictionary of active clocks indexed by name.
Notes
Only rank 0 outputs timing reports to avoid duplicate MPI prints.
- start(name)[source]#
Start a named timer.
- Parameters:
name (str) – Identifier for the routine being timed.
- stop(name)[source]#
Stop a named timer.
- Parameters:
name (str) – Identifier for the routine being timed.
- Raises:
ValueError – If the clock was never started.