Open
Description
Description
We take small performance hits by using scipy.linalg
functions rather than directly calling lapack functions in our perform
methods. These wrappers include a lot of data validation checks that we don't need, and sometimes end up copying things that we don't want to copy.
Instead of using these wrappers, we can use scipy.linalg.get_lapack_funcs
to get and use the relevant routine. For example, calling potrs
instead of using linalg.cholesky
.
Which routine to call is easy to figure out by looking at the scipy source code and checking which function the wrapper calls, and with which arguments.