Page 1 of 1

### ?GESVDX - Workspace calculations

Posted: Fri Nov 20, 2015 8:34 am
Looks to me like workspace calculations have some errors.
This particularly affects paths 1 and 1t

For example, in DGESVDX, I believe the correct code for paths 1 and 2 should be:
(Note: paths 1t and 2t are the same with M and N reversed)
Code: Select all
`**                 Path 1 (M much larger than N)*                  MAXWRK = N +      \$                     N*ILAENV( 1, 'DGEQRF', ' ', M, N, -1, -1 )                  MAXWRK = MAX( MAXWRK, N*(N+5) + 2*N*     \$                     ILAENV( 1, 'DGEBRD', ' ', N, N, -1, -1 ) )                  IF (WANTU) THEN                      MAXWRK = MAX(MAXWRK,N*(N*3+6)+N*     \$                     ILAENV( 1, 'DORMQR', ' ', N, N, -1, -1 ) )                  END IF                  IF (WANTVT) THEN                      MAXWRK = MAX(MAXWRK,N*(N*3+6)+N*     \$                     ILAENV( 1, 'DORMLQ', ' ', N, N, -1, -1 ) )                  END IF                  MINWRK = N*(N*3+20)               ELSE**                 Path 2 (M at least N, but not much larger)*                  MAXWRK = 4*N + ( M+N )*     \$                     ILAENV( 1, 'DGEBRD', ' ', M, N, -1, -1 )                  IF (WANTU) THEN                      MAXWRK = MAX(MAXWRK,N*(N*2+5)+N*     \$                     ILAENV( 1, 'DORMQR', ' ', N, N, -1, -1 ) )                  END IF                  IF (WANTVT) THEN                      MAXWRK = MAX(MAXWRK,N*(N*2+5)+N*     \$                     ILAENV( 1, 'DORMLQ', ' ', N, N, -1, -1 ) )                  END IF                  MINWRK = MAX(N*(N*2+19),4*N+M)             END IF`

### Re: ?GESVDX - Workspace calculations

Posted: Sat Nov 21, 2015 1:41 pm
Hi Lawrence,

I pushed a commit with rev 1655 to address this. Thanks a lot for pointing out the problem and providing us with a fix.

Best wishes,
Julien.