Intel® Math Kernel Library

how to use geqrf to generate unitary matrix Q (matrix size: m*n)

I know ?geqrf to calculate m-by-n A = QR and then ungqr to generate Q. but the Q is m-by-m square matrix, what i want is Q m-by-n.

I really don't know how to deal with this, I found p?geqrf and p?ungqr would generate Q with m-by-n, but I think it's a parallel ?geqrf, it might not help me. could anyone help me, please? thanks very much..

cannot find ${MKLROOT}/lib/intel64/libmkl_scalapack_lp64.a and ${MKLROOT}/lib/intel64/libmkl_blacs_intelmpi_lp64.a

system: linux 64bit

after install mkl alongwith intel parallel studio,  i cannot find 

cannot find ${MKLROOT}/lib/intel64/libmkl_scalapack_lp64.a and ${MKLROOT}/lib/intel64/libmkl_blacs_intelmpi_lp64.a

but only  ${MKLROOT}/lib/mic/libmkl_scalapack_lp64.a and ${MKLROOT}/lib/mic/libmkl_blacs_intelmpi_lp64.a

why this happen??

How to solve an ill-conditioned equation system using PARDISO?


I'm trying to use PARDISO to solve a linear system with the left hand side being symmetric but very ill-conditioned. I tried to run the solver but with "zero or negative poivting, and A is not SPD matrix" error message when I set mtype = 2. I also tried to change mtype to -2, although the system was solved, the solution didn't make any sense. It's completely wrong.

Can anybody tell me is this system solvable using PARDISO? If so, how to configure the iparm parameters? I have attached the input matrixes. P is the single right hand side. Thanks for any suggestion.

Small correction ?gesvj description in Reference Manual for Intel® Math Kernel Library 11.1 Update 4


Hi guys,

a very minor correction, consider


in description of work the manual indicates that the size of vector "work" is "max(4, m+n)"

but for description of "lwork" which is the length of work it gives lwork as "max(6,m+n)"

All the best,

use gfortran to link mkl libraries

I am writing to ask help for linking mkl with a fortran code on a Surface Pro with win 8.1 OS. I am using gfortran 4.9.2 (TDM-GCC-65). The Fortran code is paralleled using OpenMP.

I am using the following command:

gfortran -fopenmp -o mycode *.o mkl_rt.lib libiomp5md.lib

It links ok. But during execution, the executable crashes and reports Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

I also tried the following

gfortran -fopenmp -o mycode *.o mkl_rt.lib libiomp5md.lib

I got the following linking error:

Iscriversi a Intel® Math Kernel Library