A programmatic approach to function runtime estimation.
Project description
functimer
A programmatic approach to function runtime estimation.
About
This package first came about as a way to serve my needs during an Algorithms class in college.
It started as a function that stored time elapsed results in a global dictionary, where the key was a tuple of the functions name and return value.
Now it's just a bit different.
Installation
-
PYPI:
pip install functimer
-
Manual:
poetry install --no-dev poetry build pip install dist/*.whl
How to install Poetry.
Quick Example
Comprehensive Examples in examples/
-
Python
@timed(unit=Unit.SECOND, number=1) def timed_sleep(seconds): sleep(seconds) runtime = timed_sleep(1) "1.00 s"
-
Command Line
$ python -m functimer "sum([1, 2, 3])" Average runtime of 10,000 executions: 0.15 µs $ python -m functimer "sum([1, 2, 3])" --return Average runtime of 10,000 executions: 0.15 µs sum([1, 2, 3]) -> 6 $ python -m functimer "(lambda x: x+x)(10)" --return Average runtime of 10,000 executions: 0.14 µs (lambda x: x+x)(10) -> 20 $ python -m functimer "functimer.util.get_unit('1.00 s')" --return Average runtime of 10,000 executions: 0.50 µs functimer.util.get_unit('1.00 s') -> Unit.SECOND $ python -m functimer "functimer.classes.Unit.from_str('s')" --return Average runtime of 10,000 executions: 0.25 µs functimer.classes.Unit.from_str('s') -> Unit.SECOND
Tests
Run tox
in the root directory of the repo.
License
MIT
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.
Source Distribution
functimer-1.3.1.tar.gz
(9.2 kB
view details)
Built Distribution
functimer-1.3.1-py3-none-any.whl
(12.3 kB
view details)
File details
Details for the file functimer-1.3.1.tar.gz
.
File metadata
- Download URL: functimer-1.3.1.tar.gz
- Upload date:
- Size: 9.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.13 CPython/3.10.4 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d803dbc470222682b9466163506b19a60dd49662dee6276176015aa4f32e1fb2 |
|
MD5 | 2af3bf2a1a5909cb2e91f89493204265 |
|
BLAKE2b-256 | 9a0473063aa804a0606e27e6bcdf4e75a33a5e6aaf602e2ca8acf1dafa8fe135 |
File details
Details for the file functimer-1.3.1-py3-none-any.whl
.
File metadata
- Download URL: functimer-1.3.1-py3-none-any.whl
- Upload date:
- Size: 12.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.13 CPython/3.10.4 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fab3fba9beaca56bde9e87f867c4761d0b300892ca5e4cea2b79a6459c7fdc7c |
|
MD5 | d72c384e362c61714342fe76c95ed41e |
|
BLAKE2b-256 | 4dc06f8a78a7b9dc513ceef6c434e50d747c303e7b3ddf65b629839d488a13da |