Skip to content

The first step in facilitating BLAS integration into stdlib: add a solve function #709

Closed
@zoziha

Description

@zoziha

Motivation

Fortran arrays have a natural advantage in linear algebra, but unfortunately, stdlib currently does not integrate any high-level function implementation based on BLAS, LAPACK interfaces, such as det, solve, inv. For Fortran users, this is frustrating. Obviously we can use LAPACK directly, but stdlib's motivation is to be the math library that can catch up with numpy, and linear algebra is essential.
(I understand that this may not be a purely technical issue, it may involve consensus and norms.)

I'd like to start by trying to link openblas in stdlib (numpy gives preference to openblas and mkl) and show you that we are enthusiastic about BLAS. Maybe it won't succeed directly, but I'll still try to implement linalg.solve like numpy.

solve is not computationally efficient: There are two array assignments before _gesv is called, which takes a bit of time for large arrays, but is good for ease of use.
Also, since this is the first time LAPACK is encapsulated, there is no assertion on the return value info, so discussion is welcome.

Prior Art

Additional Information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    ideaProposition of an idea and opening an issue to discuss it

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions