You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As an extension to pygfx/pygfx#520 we can optimize pylinalg functions by minimizing (temporary) array creation, reducing time spent in memory allocation and garbage collection.
This will have bigger impact when the functions are used on arrays of inputs.
The text was updated successfully, but these errors were encountered:
An alternative to changing everything to in-place operations could be to introduce numba or cython.
This would mean that kernels get compiled and that we have to ship platform-specific wheels, but it would take care of optimizing buffer reuse, reducing the overhead from crossing the C-Python boundary between numpy calls, and can optionally release the GIL during kernel execution. The last point is interesting, because - if done right - it synergizes with asyncio and python's multi-threading primitives to allow multi-threaded computation that can run in parallel to the interpreter (i.e., you can sidestep the GIL with it).
As an extension to pygfx/pygfx#520 we can optimize pylinalg functions by minimizing (temporary) array creation, reducing time spent in memory allocation and garbage collection.
This will have bigger impact when the functions are used on arrays of inputs.
The text was updated successfully, but these errors were encountered: