[SOLVED] magma_dgesvd wrong optimal WORK array size ?

Open discussion for MAGMA

[SOLVED] magma_dgesvd wrong optimal WORK array size ?

Postby ReL » Tue Jun 05, 2012 8:38 am

Hello,

When using magma_dgesvd I run into segfaults if I use the optimal WORK array size computed by the function in query mode.

This happens when M is at least N but not much larger (one way to reproduce is for example to use M = N). The formule used by magma_dgesvd is (M + N) * block_size + N, from my finding it seems that allocating (M + N) * block_size + 3*N elements fixes the problem.

I am not familiar enough with the code to check if the problem is really related to the optimal size formula or to an incorrect use of the work array.

Any idea on what I can be doing wrong or maybe what could be wrong on MAGMA side?

Thanks ! :)
Rémi

Edit: I forgot something important, the problem only happens with N > 128.
Last edited by ReL on Tue Jun 05, 2012 10:08 am, edited 1 time in total.
ReL
 
Posts: 13
Joined: Tue Jun 05, 2012 7:20 am
Location: France

Re: magma_dgesvd wrong optimal WORK array size ?

Postby Stan Tomov » Tue Jun 05, 2012 9:41 am

As you note the correct work space in real arithmetic is (M+N)*nb + 3*N. This bug in the documentation has been corrected in our SVN and will be available with the next release. The work space requirement for the complex versions is (M+N)*nb + 2*N.
Stan
Stan Tomov
 
Posts: 247
Joined: Fri Aug 21, 2009 10:39 pm

Re: magma_dgesvd wrong optimal WORK array size ?

Postby ReL » Tue Jun 05, 2012 9:50 am

That was fast, thanks a lot!
ReL
 
Posts: 13
Joined: Tue Jun 05, 2012 7:20 am
Location: France


Return to User discussion

Who is online

Users browsing this forum: Google [Bot] and 1 guest