Since it would be a lot of work to change the current functionality of the backend, an easy improvement would be to introduce a new backend file, called e.g. 'Solver_Kernels'.
It would contain some of the current Vectormath functions, such as the SIB-specific transform.
This could improve the performance and memory cost of some solvers by avoiding temporaries and especially avoiding multiple for-loops for chained operations.
The kernels file has been merged into develop with e818969fda25f3b3d2c6fc7239a692e19297f585. Is the work on this finished or should more of the solvers still be updated?
Since it would be a lot of work to change the current functionality of the backend, an easy improvement would be to introduce a new backend file, called e.g. 'Solver_Kernels'. It would contain some of the current Vectormath functions, such as the SIB-specific
transform
.This could improve the performance and memory cost of some solvers by avoiding temporaries and especially avoiding multiple for-loops for chained operations.