breaking-point.py helps to find a size of input data where one function starts outperform another function. It is a convenient way to compare different algorithms for a single task.
Project description
breaking-point.py helps to find a size of input data where one function starts outperform another function. It is a convenient way to compare different algorithms for a single task.
INSTALLATION
pip install breaking-point
USAGE
from breaking_point import find_breaking_point
find_breaking_point(f1, f2, input_generator, start=1, step=1, limit=1000000, trial_count=1000, repeat_count=3)
there
f1, f2 - functions to compare.
inpurt_generator - function that takes n argument (size of input on current iteration) and returns input data for f1 and f2. Return value should be a tuple with first element - list of non-keyworded arguments and second element - dict of keyword arguments.
start - initial input data size.
step - step of iteration.
limit - maximum amount of input data. If breaking point was not found until limit was reached - iteration stops.
trial_count - number of executions with each input data size.
repeat_count - repeat trial several times and use average performance result.
Function returns n0 - size of input data for which f2(n0) executed faster than f1(n0) or None if reaches limit.
EXAMPLE
See example.py.
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
Built Distribution
Hashes for breaking_point-0.1.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec1430a9ec037b1460d308e9a838d6355d0ca111040c77631f862f70342bc50b |
|
MD5 | 25bd6f6cb975844a9aa86d59819f6c31 |
|
BLAKE2b-256 | 61e1d132773a82e98a9bd40a63091983f6cf4691e2ae27ecdce424a6268aa199 |