stdlib icon indicating copy to clipboard operation
stdlib copied to clipboard

Add solve based on OpenBLAS

Open zoziha opened this issue 2 years ago • 3 comments

  • [x] Use pkg-config to find openblas and define USE_OPENBLAS;
  • [x] BUILD_OPENBLAS is off by default because stdlib has few BLAS-based functions yet.
  • [x] Routines based on BLAS and LAPACK often only support single or double precision floating-point types;
  • [x] Add BLAS_common.fypp to set the BLAS related common variables;
  • [x] Add a solve function to stdlib_linalg, and test it;
  • [ ] Discusses and handles the _gesv return value info.
  • [ ] Test it in CI (MINGW✔, Linux-gfortran✔, Linux-ifort, macOS-gfortran);

This PR is an attempt to irrationally generate enthusiasm for BLAS integration into stdlib. Close #709 .

Syntax

x = [[stdlib_linalg(module):solve(interface)]](a,b)

zoziha avatar May 06 '23 09:05 zoziha

Should it be a simple wrapper, or something more complete (similar to @awvwgk BLAS interfaces).

@jvdp1 I'm not worried about this, and it shouldn't be too complicated to switch if the full BLAS interfaces library is available later.

zoziha avatar May 07 '23 07:05 zoziha

Related to #749 (ping @perazz )

jvdp1 avatar Dec 25 '23 22:12 jvdp1

This PR should be reviewed considering latest developments of @perazz on BLAS/LAPACK

jvdp1 avatar Apr 02 '24 19:04 jvdp1

Closed in favour of #806 . Thank you to all contributors to this PR.

jvdp1 avatar May 11 '24 08:05 jvdp1