Page 1 of 1

Equivalent routines for eigs function in Matlab

Posted: Fri Oct 23, 2015 8:23 pm
by Nithishify
Hi,

Are there any routines which compute the K largest Eigenvectors of a dense and a symmetric matrix (It is Positive semi definite as well) in Magma? If there is one, what algorithm does it use? I know that matlab uses Arnoldi/Lanczos iterations to compute the required Eigenvectors.

With regards,
Nithish

Re: Equivalent routines for eigs function in Matlab

Posted: Sat Oct 24, 2015 9:02 am
by mgates3
See {ssy, dsy, che, zhe}evdx. The "x" version adds VL, VU or IL, IU parameters to specify a range of eigenvalues to compute, either by value or by index. Documentation:
http://icl.cs.utk.edu/projectsfiles/mag ... 606aab281e

Just needs to be symmetric / Hermitian, not necessarily positive definite.
-mark

Re: Equivalent routines for eigs function in Matlab

Posted: Sat Oct 24, 2015 5:49 pm
by Nithishify
Hi,

Thanks for the reply.
I tried to find the K largest eigen vectors using dsyevdx routine. However, it seems to be much slower than the matlab eigs function. I have a 11000 * 11000 symmetric matrix (Also all the eigen values were between 0 to 1) and extracted the first 10 eigen vectors of the matrix. Matlab takes about 2-3 seconds to find the required eigen values where as magma_dsyevdx_gpu took 15 seconds to get the decomposition. I am using a tesla K40c GPU for all the experiments. Also can I use the LOBPCG method for calculating them? If yes, can I use them directly on the matrix in Dense format? The matrix in consideration can be extremely dense.

With regards,
Nithish