Use of deprecated LAPACK routines
ilayn opened this issue · 2 comments
When linked with modern LAPACK versions, > v.3.5.0 xLATZM
, xGEGS
routines have been deprecated since 11/2015. See the end section "What's new?" https://netlib.org/lapack/lapack-3.6.0.html
The replacement routine is xORMRZ
, xGGES
family. Is this something that can be changed ? I can send a Pull Request if there is an interest. Otherwise LAPACK library should be recompiled with deprecated routines enabled which is unnecessary bloat in my opinion. Moreover it seems like only xLATZM
and xGEGS
are the culprit.
Thank you for your comment.
Indeed, dlatzm is called 29 times in eight SLICOT routines, while zlatzm is called once in two routines. Most of these routines are low-level ones, and calling BLAS 3 subroutines instead of BLAS 2 xlatzm will not improve the efficiency. In any case, there is no plan at this time to make such (not easy) replacements. However, to avoid compiling all deprecated LAPACK routines, I added xlatzm in a new sub-directory, src_aux, and updated the makefiles to compile and link them.
Thank you @VasileSima4, just a gentle reminder that there is also gegs
and possibly more that are deprecated. I didn't mean to imply that these affect the performance but are a source of "code rot" as systems move to modern versions of LAPACK which is at v3.11.0 right now.
Code change is indeed not trivial but that's what I meant with "if there is any interest" I can do the changes and you can decide whether they are correct or not. The new functions are not that different than the deprecated ones.