| 12345678910111213141516171819202122232425262728293031 |
- import argparse
- import timeit
- from typing import Callable
- from utils import inference
- parser = argparse.ArgumentParser(description="Speed benchmark")
- parser.add_argument(
- "--repeat",
- type=int,
- default=3,
- help="Times an experiment will be run.",
- )
- args = parser.parse_args()
- def measure_speed(func: Callable[[], None]):
- # as written in https://docs.python.org/3/library/timeit.html#timeit.Timer.repeat,
- # min should be taken rather than the average
- runtimes = timeit.repeat(
- func,
- repeat=args.repeat,
- number=10,
- )
- print(runtimes)
- print("Min execution time: %.3fs" % (min(runtimes) / 10.0))
- if __name__ == "__main__":
- measure_speed(inference)
|