Easy-to-use timer for tracking runtimes
Project description
timer
Easy-to-use timer for tracking runtimes.
pip install sometimer
Examples
Main functionality: summary function
from sometimer import timer # Main functionality is the summary function: timer.new_checkpoint() do_stuff() timer.new_checkpoint(name='useful-name') do_other_stuff() ... summary = timer.summary() print(summary)
timer summary
-duration- -start-
start 0.00s
checkpoint_0: 2.36s 0.10s
useful-name: 0.41s 2.46s
victory lap : 12.01s 2.87s
end 14.87s
timer.__call__()
returns a one-liner
timer() >>> 'timer: 0.202s'
# and with an active checkpoint: timer() >>> 'timer: 0.303s checkpoint_0: 0.050s'
@time_this_method
decorator to avoid clutter
Some functions are always heavy (e.g. load, data preprocessing, data augmentation) and might be useful to time:
from sometimer import time_this_method @time_this_method def heavy_preprocessing(data): pass @time_this_method(name='more-descriptive-name') def inefficient_method(data): pass
when run, yields:
heavy_preprocessing(data)
inefficient_method(data)
timer.summary()
>>> 'timer summary
-duration- -start-
start: 0.00s 0.00s
heavy_preprocessing: 0.00s 25.10s
more-descriptive-name: 25.10s 13.01s
end: 38.10s'
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Built Distribution
sometimer-0.1.10-py3-none-any.whl
(12.7 kB
view hashes)
Close
Hashes for sometimer-0.1.10-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1be4872fa90a7b1f82d17543812a034c93c8f74a8ab3b5cf5701f2bcd0038e8e |
|
MD5 | 38ef88cc6c48dea49328cafd4370a8db |
|
BLAKE2-256 | 558ad40448b12e6523883035d09a91c5bd2689660b0229581163ddea514fa25a |