Skip to content

Commit b7b9415

Browse files
committed
Correct bug0077 : [DS]GESVD Minimum Worksize comments need clarification
Depending on the PATH, the minimum workspace is not the same.
1 parent d9d50d1 commit b7b9415

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

SRC/dgesvd.f

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,10 @@ SUBROUTINE DGESVD( JOBU, JOBVT, M, N, A, LDA, S, U, LDU, VT, LDVT,
115115
*
116116
* LWORK (input) INTEGER
117117
* The dimension of the array WORK.
118-
* LWORK >= MAX(1,3*MIN(M,N)+MAX(M,N),5*MIN(M,N)).
118+
* LWORK >= MAX(1,5*MIN(M,N)) for the paths (see comments inside code):
119+
* - PATH 1 (M much larger than N, JOBU='N')
120+
* - PATH 1t (N much larger than M, JOBVT='N')
121+
* LWORK >= MAX(1,3*MIN(M,N)+MAX(M,N),5*MIN(M,N)) for the other paths
119122
* For good performance, LWORK should generally be larger.
120123
*
121124
* If LWORK = -1, then a workspace query is assumed; the routine

SRC/sgesvd.f

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,10 @@ SUBROUTINE SGESVD( JOBU, JOBVT, M, N, A, LDA, S, U, LDU, VT, LDVT,
115115
*
116116
* LWORK (input) INTEGER
117117
* The dimension of the array WORK.
118-
* LWORK >= MAX(1,3*MIN(M,N)+MAX(M,N),5*MIN(M,N)).
118+
* LWORK >= MAX(1,5*MIN(M,N)) for the paths (see comments inside code):
119+
* - PATH 1 (M much larger than N, JOBU='N')
120+
* - PATH 1t (N much larger than M, JOBVT='N')
121+
* LWORK >= MAX(1,3*MIN(M,N)+MAX(M,N),5*MIN(M,N)) for the other paths
119122
* For good performance, LWORK should generally be larger.
120123
*
121124
* If LWORK = -1, then a workspace query is assumed; the routine

0 commit comments

Comments
 (0)