C interface Support for LAPACK

By Ying Hu, Published: 06/11/2012, Last Updated: 06/11/2012

 

Intel® MKL support both FORTRAN interface and C interface to LAPACK now.  In intel® MKL 10.3, we have extended C support and added C language interface to LAPACK rotuines.

Please refer the C interface to LAPACK technical paper for more details. and follow the link, you can find the online documentation and C LAPACK examples.

A small C code for QR factorization using C interface LAPACKE_dgeqrf

#include <mkl_lapacke.h>

#include <mkl_blas.h>

int main(){

int matrix_order = LAPACK_ROW_MAJOR;

lapack_int info, m(3), n(2), lda(2);

double a[6] = {0,1,2,1,1,1};

double tau[2] = {0.0,0.0};

info = LAPACKE_dgeqrf(matrix_order, m, n, a, lda, tau); 

return info;
}

In latest MKL 11.0 Version, we introduced new routines in LAPACK 3.4.x plus a list of additional auxiliary functions. Please see the detials in the article  

A set of LAPACK examples is now available online. These examples are based on the ones available with the product in the examples directory, but are more easily browsed and contain no dependencies on other source files or auxiliary libraries. Just paste the code into a file and link with the Intel® MKL libraries.

Link: LAPACK examples

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804