Closed FractalMachinist closed 3 years ago
@FractalMachinist I'd remove commit 221c8d4
@arenmarsden Oops, you're absolutely right.
EDIT: I don't know how to edit this particular pull request in-place. I'll get the Doctor's attention during the stream if it comes up.
Stale
To address limited performance, two main changes:
1. Don't wait for the drawing to finish
Move the matplotlib drawing step to a separate thread. This is responsible for a very significant speedup, but increases complexity (more in Pros/Cons). The single largest contributor to the drawing step is the flow lines, which can't be accelerated without a very significant re-write of matplotlib. This does mean we can compute far more than one step per drawing, which invites higher-resolution models.
2. Let Numba manage parallelism
Instead of writing explicitly multi-threaded model evaluation, use the Numba compiler (getting rid of Cython) in ways that allow for automatically managed multi-core execution.
Pros:
Cons: