Page 1 of 1

Poor MAGMA GPU performance for the generalized eigenvalue

PostPosted: Fri Mar 16, 2012 2:45 pm
by emilio
In some code we need to get auto vectors and auto values for the generalized eigenvalue problem with symmetric real matrices (Ax=lamba Bx). This code uses DSPGVX from LACPACK. We wanted to speed it up on GPU using a MAGMA function. We asked on this forum and got the answer about this

http://icl.cs.utk.edu/magma/docs/zhegvx_8cpp.html

The size of our matrices (N) goes from 100 to 50000 and even more, related to the number of atoms in a molecule. We observe:

a) for N bigger than 2500 (approx), MAGMA just does not work
b) MAGMA runs always slower than LAPACK sequential

Is this behavior normal and could we overcome it? Can anybody report any reference where anybody working on this similar problems gets a decent speedup?

Thanks

Re: Poor MAGMA GPU performance for the generalized eigenvalu

PostPosted: Fri Mar 16, 2012 5:09 pm
by Julien Langou
For problem from size 100 to 2500, I am not too surprise to see that MAGMA does not offer any speed up over a pure CPU code. The time to transfer the data a few times from CPU to GPU and the LAPACK code is already done. For sizes like 20K, you should start seeing some considerable speedup using MAGMA. It's a pity, it is not working, I have no idea why. You probably want to post on the MAGMA users' forum about your problem. One comment: I see that you often mention DSPGVX, the routine DSYGVX albeit using twice more space the matrix A (which is not negligible when A is 50K, granted!) should be much faster than DSPGVX. Julien.