Parameter had an illegal value in zheevd/dsyevd.

Open discussion for MAGMA library (Matrix Algebra on GPU and Multicore Architectures)

Parameter had an illegal value in zheevd/dsyevd.

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


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 ?


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
(607 Bytes) Downloaded 139 times
Posts: 31
Joined: Tue Nov 15, 2011 12:38 pm

Return to User discussion

Who is online

Users browsing this forum: No registered users and 3 guests