Putting questions like this causes a bad conscience ... however, it seems to me that it is difficult to do Google. I am experimenting with
lapack_int LAPACKE_dgesvd(
int matrix_order, char jobu, char jobvt,
lapack_int m, lapack_int n, double* a,
lapack_int lda, double* s, double* u, lapack_int ldu,
double* vt, lapack_int ldvt, double* superb);
where promises the decomposition of a singular value. Stopping to fear Fortran, I found a gold mine here: http://www.netlib.no/netlib/lapack/double/dgesvd.f
In fact, this link indicates all the parameters, but LAPACKE is specifically double * superb (well, the order parameter, but in FORTRAN it is still COL_MAJOR).
Further, here http://software.intel.com/sites/products/documentation/doclib/mkl_sa/11/mkl_lapack_examples/lapacke_dgesvd_row.c.htm I found a program that seems to hint at "it's some kind of working cache" .
, , LAPACKE_dgesvd_work (..)?
, : min (M, N) -1 . ?