Using the Basic Linear Algebra Subprograms – BLAS

Four Basic Linear Algebra Subprograms (BLAS) functions are shipped with the XL C compiler in the libxlopt library. The functions consist of the following:
  • sgemv (single-precision) and dgemv (double-precision), which compute the matrix-vector product for a general matrix or its transpose
  • sgemm (single-precision) and dgemm (double-precision), which perform combined matrix multiplication and addition for general matrices or their transposes
Because the BLAS routines are written in Fortran, all parameters are passed to them by reference and all arrays are stored in column-major order.
Note: Some error-handling code has been removed from the BLAS functions in libxlopt, and no error messages are emitted for calls to the these functions.

BLAS function syntax describes the prototypes and parameters for the XL C BLAS functions. The interfaces for these functions are similar to those of the equivalent BLAS functions shipped in IBM's Engineering and Scientific Subroutine Library (ESSL); for more information and examples of usage of these functions, see Engineering and Scientific Subroutine Library Guide and Reference, available at the Engineering and Scientific Subroutine Library (ESSL) and Parallel ESSL web page.

Linking the libxlopt library describes how to link to the XL C libxlopt library if you are also using a third-party BLAS library.



Voice your opinion on getting help information Ask IBM compiler experts a technical question in the IBM XL compilers forum Reach out to us