Error using magma_dsyevd_gpu when N < 14

Open discussion for MAGMA

Error using magma_dsyevd_gpu when N < 14

Postby luiceur » Tue Apr 30, 2013 8:40 am

Hi there,

I've been playing around with magma_dsyevd_gpu and I've found out that I get errors when N <14.

Code: Select all
./testing_dsyevd_gpu -N 12 -JV

MAGMA 1.3.0
device 0: Tesla C2050, 1147.0 MHz clock, 2687.4 MB memory, capability 2.0
testing_dsyevd -N 12 [-JV] [-JN]
N ldda CPU Time(s) GPU Time(s)
===================================

MKL ERROR: Parameter 11 was incorrect on entry to magma_dsytrd_gpu

MKL ERROR: Parameter 11 was incorrect on entry to magma_dsytrd_gpu
12 12 0.00 0.00

Does it mean I connot use it with N < 14? If N>= 14, I've got no errors.
Anyone has experienced something similar?
luiceur
 
Posts: 26
Joined: Tue Jul 10, 2012 4:38 am

Re: Error using magma_dsyevd_gpu when N < 14

Postby mgates3 » Tue May 07, 2013 12:52 pm

Yes, I can confirm this. The fix is simple. In dsyevd, it says:

LWORK (input) INTEGER
The length of the array WORK.
If N <= 1, LWORK must be at least 1.
If JOBZ = 'N' and N > 1, LWORK must be at least 2*N + N*NB.
If JOBZ = 'V' and N > 1, LWORK must be at least 1 + 6*N + 2*N**2.
NB can be obtained through magma_get_dsytrd_nb(N).

For JOBZ=V, use max( 2*N + N*NB, 1 + 6*N + 2*N**2 ) instead of 1 + 6*N + 2*N**2. It happens for N < 14 because there the 2*N + N*NB formula is bigger than the other formula. We will correct the MAGMA code.

-mark
mgates3
 
Posts: 442
Joined: Fri Jan 06, 2012 2:13 pm


Return to User discussion

Who is online

Users browsing this forum: Yahoo [Bot] and 7 guests