src.utils.timer module#

Lightweight timing utilities for optional performance diagnostics.

class src.utils.timer.Timer(unit='iter', mode: Literal['pace', 'speed', 'counter', 'timer'] = 'pace')[source]#

Bases: object

__init__(unit='iter', mode: Literal['pace', 'speed', 'counter', 'timer'] = 'pace')[source]#
add(n=1)[source]#
clear(reset=False)[source]#
property speed#
class src.utils.timer.AbsTimer(unit='iter', mode: Literal['pace', 'speed', 'counter', 'timer'] = 'pace')[source]#

Bases: Timer

__init__(unit='iter', mode: Literal['pace', 'speed', 'counter', 'timer'] = 'pace')[source]#
add(n=1)[source]#
clear(reset=False)[source]#
class src.utils.timer.NamedTimer(unit='iter', mode: Literal['pace', 'speed', 'counter', 'timer'] = 'pace')[source]#

Bases: Timer

Named timer for collecting per-stage timing statistics.

Useful for analyzing time distribution across phases such as data loading, forward passes, and post-processing during training or inference.

__init__(unit='iter', mode: Literal['pace', 'speed', 'counter', 'timer'] = 'pace')[source]#
Parameters:
  • unit (str) – Unit suffix for display, such as ‘iter’.

  • mode (str) – Display mode. - ‘pace’: time per unit, e.g. 100ms/iter - ‘speed’: units completed per second, e.g. 10iter/s

add(name, n=1, update_time=True)[source]#

Record time spent in the stage identified by name.

Parameters:
  • name (str) – Stage name.

  • n (int, optional) – Completed work count.

  • update_time (bool, optional) – Whether to reset the start time.

clear(reset=True)[source]#
total_time()[source]#
property time#
property count#
class src.utils.timer.ParallelTimer(unit='iter', mode: Literal['pace', 'speed', 'counter', 'timer'] = 'pace')[source]#

Bases: Timer

__init__(unit='iter', mode: Literal['pace', 'speed', 'counter', 'timer'] = 'pace')[source]#
add(name, n=1)[source]#
clear(reset=True)[source]#
total_time()[source]#
property time#
property count#