sparkfish / augraphy

Augmentation pipeline for rendering synthetic paper printing, faxing, scanning and copy machine processes
https://github.com/sparkfish/augraphy
MIT License
338 stars 44 forks source link

Create Baseline Performance Benchmark; Apply Initial Optimizations Using Numba #270

Closed jboarman closed 1 year ago

jboarman commented 1 year ago

We need an initial set of timings captured to establish a baseline for where we stand now for each augmentation.

Once we have that baseline, we should also take a first pass at optimizing using Numba to optimize loops. A separate issue will capture other types of improvements, such as leveraging GPUs and other techniques.

jboarman commented 1 year ago

Many related PRs:

250

252

253

254

255

256

257

267

jboarman commented 1 year ago

These PRs resulted in greater than 100% improvement to speed, primarily resulting from optimization via use of Numba.

image

See updated benchmark results: https://github.com/sparkfish/augraphy/tree/dev/benchmark