Parameter had an illegal value in zheevd/dsyevd.

Open discussion for MAGMA

Parameter had an illegal value in zheevd/dsyevd.

Postby Ced » Mon Mar 26, 2012 9:26 am

Hello,

I'm trying to use magma_zheevd_gpu and magma_dsyevd_gpu functions but I've got the error message :
"xerbla: On entry to magma_ parameter number 11 had an illegal value (lapack library problem)"

In my code, I call these functions two times :
- The first call is used to get the workspace sizes.
- The second call is used to execute the function.

If I call zheevd with parameters JOBZ = 'N', the result still good but when I call it with JOBZ = 'V',
I get this error message. For dsyevd, I get this error with 'N' or 'V'.
UPLO is always equal to 'U'.

Have you any idea ?

In file dsyevd_gpu.cpp, I've find a discordance between the doc and the code.
the documentation said, "If JOBZ = 'V' and N > 1, LWORK must be at least 1 + 6*N + 2*N**2." but it's write in the code
"lwmin = 2 *n + n*n;" (same size as zheevd, in the same case)

What is the good size ?

Thanks,

Ced
Ced
 
Posts: 4
Joined: Wed Mar 07, 2012 12:37 pm

Re: Parameter had an illegal value in zheevd/dsyevd.

Postby jgpallero » Fri Mar 30, 2012 8:32 am

I have the same error. In dsyevd the LWORK test could be wrong in the code. If I use the maximum values for LWORK as says in the help I obrain always an illegal parameter error. If I try to query the function for optimal values in LWORK it returns a value one unity superior as in the help says, so I suppose and internal checking error. Attached I send a test program
Attachments
test_dsyevd.c
(607 Bytes) Downloaded 81 times
jgpallero
 
Posts: 26
Joined: Tue Nov 15, 2011 12:38 pm


Return to User discussion

Who is online

Users browsing this forum: No registered users and 1 guest

cron