julie [Mon, 7 Feb 2011 18:00:27 +0000 (18:00 +0000)]
Fix Bug 0073: [Re] Add dummy routine in timer to avoid compiler problem
Bug reported by John Tellefson to LAPACK Mailing List on February 7th.
Dummy routine was removed in LAPACK 3.3.0 because it seems it was working on all machines.
[Re] Incorporation of the dummy routine and incorporate John's suggested cosmectic changes to allow
an easier change in number of operation to perform.
"modified secondtst.f from lapack-3.2.2 with the old
code that makes it reliably report timing loop results. I also added a
variable TOTAL to simplify changes in setting array size and iterations
which affect total flops and made few other changes.
julie [Mon, 7 Feb 2011 14:54:28 +0000 (14:54 +0000)]
Move CMake files to a subdirectory
- Brad King (Kitware)
julie [Mon, 7 Feb 2011 14:54:24 +0000 (14:54 +0000)]
Link tmglib test library to lapack
The library uses symbols from lapack and so should link to it.
Previously this was not noticed because static libraries do not
really link and the test executables link to lapack anyway.
- Brad King (Kitware)
julie [Mon, 7 Feb 2011 14:54:21 +0000 (14:54 +0000)]
Organize binaries into bin and lib directories
Put executables under 'bin' and libraries under 'lib'. This is needed
on Windows with shared library builds to put the .dll and .exe files
together for running tests without setting PATH.
- Brad King (Kitware)
julie [Mon, 7 Feb 2011 14:54:19 +0000 (14:54 +0000)]
Restore CMake packaging removed in r858
- Brad King (Kitware)
julie [Mon, 7 Feb 2011 14:54:16 +0000 (14:54 +0000)]
Revert "Restore CMake packaging removed in r858"
This reverts commit
e725dc754dd87ed45f21ba6981fca6dbc0530aa3.
julie [Mon, 7 Feb 2011 14:54:14 +0000 (14:54 +0000)]
Revert "Organize binaries into bin and lib directories"
This reverts commit
e3b5f531553c176a009f41b6a312b0c11b955fd6.
julie [Mon, 7 Feb 2011 14:54:11 +0000 (14:54 +0000)]
Revert "Link tmglib test library to lapack"
This reverts commit
5070d8d0b7690496561a26f5849d6f80a8727d93.
julie [Mon, 7 Feb 2011 14:54:09 +0000 (14:54 +0000)]
Revert "Move CMake files to a subdirectory"
This reverts commit
bc425c443232cf9737afcce38753f79963d31e0a.
julie [Mon, 7 Feb 2011 14:37:01 +0000 (14:37 +0000)]
Move CMake files to a subdirectory
julie [Mon, 7 Feb 2011 14:36:57 +0000 (14:36 +0000)]
Link tmglib test library to lapack
The library uses symbols from lapack and so should link to it.
Previously this was not noticed because static libraries do not
really link and the test executables link to lapack anyway.
julie [Mon, 7 Feb 2011 14:36:54 +0000 (14:36 +0000)]
Organize binaries into bin and lib directories
Put executables under 'bin' and libraries under 'lib'. This is needed
on Windows with shared library builds to put the .dll and .exe files
together for running tests without setting PATH.
julie [Mon, 7 Feb 2011 14:36:50 +0000 (14:36 +0000)]
Restore CMake packaging removed in r858
julie [Thu, 3 Feb 2011 18:28:38 +0000 (18:28 +0000)]
Fix bug 0072 reported by Inge Gutheil on February 3rd 2011
From Inge:
In the tests,
TESTING/EIG/cchkhs.f (similar in zchkhs.f) in line 492 N = NN ( JSIZE )
is set. If NN( JSIZE ) is zero, CCOPY (N-1,....) gives an error message
and the test breaks. In the real versions dchkhs after N = NN ( JSIZE )
there is
IF ( N .EQ. 0 ) GO TO 270, so there DCOPY does not exit with an error
message.
I think the same statement should be added in the complex version to
avoid copying -1 element.
langou [Mon, 31 Jan 2011 18:27:33 +0000 (18:27 +0000)]
Change from Christof (Voemel) sent on Mon, 31 Jan 2011.
*********************************************************************
change
IF( USEDQD ) THEN
* The initial SIGMA was to the outer end of the spectrum
* the matrix is definite and we need not retreat.
TAU = SPDIAM*EPS*N + TWO*PIVMIN
ELSE
into
IF( USEDQD ) THEN
* The initial SIGMA was to the outer end of the spectrum
* the matrix is definite and we need not retreat.
TAU = SPDIAM*EPS*N + TWO*PIVMIN
TAU = MAX( TAU,TWO*EPS*ABS(SIGMA) )
ELSE
that is, with an added line to prevent TAU from becoming zero
TAU = MAX( TAU,TWO*EPS*ABS(SIGMA) )
*********************************************************************
Thanks Christof!
julie [Mon, 31 Jan 2011 16:14:51 +0000 (16:14 +0000)]
Fix bug0070 : IWORK dimension is incorrect
bug report sent by nmozarto on Jan 27th
see forum topic 2156
From Brian:
The correct dimension is (M-R), in which R is the smallest of P, M-P, Q, and M-Q.
An M-by-M matrix is partitioned into a 2-by-2 block structure. The
dimensions of the blocks are P-by-Q, P-by-(M-Q), (M-P)-by-Q, and
(M-P)-by-(M-Q). IWORK is involved in the permutation of rows or
columns of these blocks, and it is the largest block, in terms of
number of rows or columns, that determines the size of IWORK.
julie [Fri, 28 Jan 2011 23:04:40 +0000 (23:04 +0000)]
Correct bug0069
Bug was sent by nmozarto on Jan 27th (see forum topic 2156)
Problem in new function ?SYTRI2 was found: the part of A below the diagonal is changed in the case UPLO='U' .
But in the description of arguments
If UPLO = 'U', the upper triangular part of the
inverse is formed and the part of A below the diagonal is not
referenced; if UPLO = 'L' the lower triangular part of the
inverse is formed and the part of A above the diagonal is
not referenced.
These elements zeroized after calling ?GEMM function in ?SYTRI2X.
CALL SGEMM('T','N',NNB,NNB,CUT,ONE,A(1,CUT+1),LDA,
$ WORK,N+NB+1, ZERO, A(CUT+1,CUT+1), LDA)
julie [Thu, 27 Jan 2011 14:25:04 +0000 (14:25 +0000)]
Same for hetrs2 routines
julie [Thu, 27 Jan 2011 14:21:35 +0000 (14:21 +0000)]
Follow-up: fix for new routines to handle LDA
See bug0067
langou [Wed, 26 Jan 2011 14:02:05 +0000 (14:02 +0000)]
1) Je viens de modifier le fichier timer_dsytri2.c de telle sorte a ce qu'il
traite les matrices avec des lda.
Exemple:
> gfortran timer_dsytri2.c /Users/langou/Documents/lapack-dev-trunk.svn/lapack_LINUX.a -framework vecLib
> ./a.out -U -lda 1079 -n 100
DSYTRI2 info=0, check=1.
891597e-14
Dispo dans ldlt.git. Marche bien. Upper ou Lower. LDA different de N ou pas. Le
check est
|| A . inv(A) - I || / || A ||
(Je pense que il faut diviser par || A || * || inv(A) ||, pas tres important.)
2) Du coup, dans ce commit, je rectifie tous les codes. Cela compile. Je n'ai
pas verifie les testings. Je n'ai pas ecrit de driver pour verifier. (Le driver
n'est que pour la version DOUBLE.)
JL
langou [Wed, 26 Jan 2011 05:49:27 +0000 (05:49 +0000)]
bon maintenant, ca compile ... (desole)
langou [Wed, 26 Jan 2011 05:47:42 +0000 (05:47 +0000)]
J'ai lu le code vite fait. Comme ca, ca devrait marcher. Je n'ai pas verifie.
Je n'ai meme pas essaye de compiler en fait. En gros mettre LDA en parametre,
definir A comme etant A( LDA, N ) et pour l'increment du swap mettre LDA a la
place de N quand tu travailles sur les lignes. Donc c'est tout con.
Donc il faut ecrire un driver qui teste ca avec une LDA differente de N ... Et
appliquer les modifications aux autres routines CHE, CSY, ZHE, ZSY et SSY.
Sinon pourquoi dans DSYSWAPR, est ce que tu utilises DSWAP de temps en temps,
et de temps en temps tu le fais a la main? Je n'ai pas regarde les details.
JL.
julie [Tue, 25 Jan 2011 22:02:14 +0000 (22:02 +0000)]
Include Zlatko changes following Paul Roberts from NAG report
Message from Zlatko:
The following changes are made in the
current version of the code:
1. in dgejsv, sgejsv:
- a typo in checking the parameters LSVEC.OR.LSVEC
has been changed to LSVEC.OR.RSVEC
- the length of WORK, LWORK, its description
and the minimal length for different JOBs
have been revised and corrected
- in a call to xGESVJ with WORK(N+1), the length
of the workspace is set to the correct value of
LWORK-N, instead of the incorrect LWORK
- a missing RETURN after a call to XERBLA
has been inserted
- In the case of zero matrix on input, IWORK(3)
is set to ZERO, to correspond to the description
of IWORK in other nontrivial cases
2. in all routines
- simple editing so that the single and
the corresponding double routines have matching
lines in the source codes.
julie [Mon, 24 Jan 2011 20:05:41 +0000 (20:05 +0000)]
Correct multiple definition in the lapack lib (See forum topic 2099 - Bruno)
julie [Thu, 20 Jan 2011 17:33:46 +0000 (17:33 +0000)]
Adding new hetri routines
julie [Thu, 13 Jan 2011 12:05:18 +0000 (12:05 +0000)]
Remove the last compiler directive
julie [Wed, 12 Jan 2011 17:34:06 +0000 (17:34 +0000)]
Remove outdated compiler directives
julie [Tue, 11 Jan 2011 14:10:14 +0000 (14:10 +0000)]
Suppress warning because of undefined variable
julie [Sun, 9 Jan 2011 19:30:36 +0000 (19:30 +0000)]
Suppress a warning from SUN compilers when building exclusively for your native
platform.
- Chuck Atkins (Kitware)
julie [Sat, 8 Jan 2011 16:13:32 +0000 (16:13 +0000)]
Suppress harmless linker warnings on IRIX + MIPSpro
- Chuck Atkins (Kitware)
julie [Wed, 5 Jan 2011 03:28:27 +0000 (03:28 +0000)]
Removed output truncation on ctest submissions.
- Chuck Atkins (Kitware)
julie [Tue, 4 Jan 2011 20:03:34 +0000 (20:03 +0000)]
Fix object needed for targets in CMAKE build
julie [Tue, 4 Jan 2011 19:59:16 +0000 (19:59 +0000)]
minor fix following compiler warnings: remove unused variable and change digit output format
julie [Tue, 4 Jan 2011 19:58:09 +0000 (19:58 +0000)]
minor fix: add comment to warn that vector and matrix arguments are not referenced when N = 0, or M = 0
julie [Fri, 31 Dec 2010 01:33:24 +0000 (01:33 +0000)]
Re-worked the type size check to be much more compact
- Chuck Atkins (Kitware)
julie [Thu, 30 Dec 2010 23:11:32 +0000 (23:11 +0000)]
Added acml_mv to the ACML link libraries
- Chuck Atkins (Kitware)
julie [Thu, 30 Dec 2010 22:14:10 +0000 (22:14 +0000)]
1. Adjusted regex checks in CheckLAPACKCompilerFlags.cmake to be more compact
2. Added CheckFortranIntSize.cmake to auto-determine the default integer size
3. Added more auto-detection features using integer size and compiler checks in FindBLAS.cmake
- Chuck Atkins (Kitware)
julie [Fri, 24 Dec 2010 21:38:46 +0000 (21:38 +0000)]
Display the test's output to stdout after a run so it can be viewed on the dashboard.
- Chuck Atkins (Kitware)
julie [Fri, 24 Dec 2010 15:29:47 +0000 (15:29 +0000)]
1. Fixed a typo in FindBLAS for SGI (SCCL should have been SCSL) and 2. Fixed compiler flag check for SunPro to use ftrap=%none instead of ftrap=none.
- Chuck Atkins (Kitware)
julie [Thu, 23 Dec 2010 02:32:05 +0000 (02:32 +0000)]
1. Added support for both IBM XL Fortran and IBM VisualAge Fortran
2. Added libblas to ESSL libs to cover missing functionality from ESSL
3. Renamed ESSL_6464, ESSL_SMP, and ESSL_SMP_6464 to ESSL6464, ESSLSMP, and ESSLSMP6464 respectively to mimic the actual library names.
4. Added copyright notice to CheckLAPACKCompilerFlags
- Chuck Atkins (Kitware)
julie [Thu, 23 Dec 2010 00:50:18 +0000 (00:50 +0000)]
Fixed a bug in the IBM compiler options (-ffixed-form -> -qfixed).
- Chuck Atkins (Kitware)
julie [Thu, 23 Dec 2010 00:39:05 +0000 (00:39 +0000)]
Added checks disable floating point exceptions for GNU, Intel, Sun, and IBM compilers and to enforce fixed-form for IBM compilers.
- Chuck Atkins (Kitware)
julie [Tue, 21 Dec 2010 02:11:49 +0000 (02:11 +0000)]
Fixed FindBLAS for Sun Performance Library
- Chuck Atkins (Kitware)
julie [Mon, 20 Dec 2010 22:54:32 +0000 (22:54 +0000)]
Added a CTestCustom.cmake file to filter unwanted files from code coverage and suppress harmless warnings on the dashboard.
- Chuck Atkins (Kitware)
langou [Fri, 17 Dec 2010 00:09:40 +0000 (00:09 +0000)]
Adding Peng Du's name in the authors of the variants.
julie [Thu, 16 Dec 2010 15:12:27 +0000 (15:12 +0000)]
1. Corrected the way linker flags from FindBLAS are being used
2. Changed LOOK_FOR_OPTIMIZED_BLAS to USE_OPTIMIZED_BLAS per CMake convention
3. Changed BLAS_VENDORS to use library names instead of manufacturer names:
From: BLAS_VENDORS=AMD;IBM;INTEL;HP;SUN etc
To: BLAS_VENDORS=ACML;ESSL;MKL;VECLIB;PERFLIB
This seems to be a more intuitive interface
4. Added support for Intel MKL single dynamic library
- Chuck Atkins (Kitware)
julie [Wed, 15 Dec 2010 18:44:42 +0000 (18:44 +0000)]
Merge some of Sebastien Fabbro's patch for CMAKE
julie [Wed, 15 Dec 2010 18:42:50 +0000 (18:42 +0000)]
Added compiler flags from FindBLAS.
julie [Wed, 15 Dec 2010 18:08:26 +0000 (18:08 +0000)]
minor modif on find BLAS
julie [Wed, 15 Dec 2010 16:58:32 +0000 (16:58 +0000)]
Removed leftover debug messages from FindBLAS.cmake
julie [Wed, 15 Dec 2010 16:48:25 +0000 (16:48 +0000)]
Added support for external BLAS libraries in the CMake build.
langou [Tue, 14 Dec 2010 07:17:24 +0000 (07:17 +0000)]
undoing my check, sorry
langou [Tue, 14 Dec 2010 07:16:58 +0000 (07:16 +0000)]
this is a test
langou [Mon, 13 Dec 2010 19:10:19 +0000 (19:10 +0000)]
New license file as agreed by email.
NB: license does not change. Copyright holders change.
(Adding UCDenver and UCBerkeley.)
julie [Mon, 29 Nov 2010 20:17:43 +0000 (20:17 +0000)]
Follow rencang's recommendation to fix bug 0064, set MAXIT to 64
Email from rencang:
"I have to clarify that the code does not do strict bisection. It uses bisection as the fall back when the computed approximation somehow gets out of the interval that the approximation should be in. Then one step of bisection is taken and then it goes back to the usual Newton-like method again (because that's faster). The interval is updated every step and thus shrinking. Xlasd4 was handled similarly.
Setting MAXIT=20 was too aggressive by my side as we know now. MAXIT=64 may be too conservative. Perhaps we should set MAXIT=40. If that breaks in the future, I'd really like to revisit the code. But if we'd like to play it safe, your suggested 64 would be the best bet."
julie [Wed, 17 Nov 2010 22:57:18 +0000 (22:57 +0000)]
Fix line length
julie [Wed, 17 Nov 2010 22:10:50 +0000 (22:10 +0000)]
Fix typo in external routine name
langou [Sun, 14 Nov 2010 15:46:03 +0000 (15:46 +0000)]
correct indentation
langou [Sun, 14 Nov 2010 15:35:07 +0000 (15:35 +0000)]
imporve (?) comments
langou [Sun, 14 Nov 2010 15:21:05 +0000 (15:21 +0000)]
typos
julie [Sat, 13 Nov 2010 15:50:45 +0000 (15:50 +0000)]
Correct memory access in CSD found with -fbounds-check flag
julie [Sat, 13 Nov 2010 11:04:49 +0000 (11:04 +0000)]
polish comments
correct final iteration in the lower case.
Teststing are fine now with the -fbounds-check options.
brian [Wed, 10 Nov 2010 23:11:43 +0000 (23:11 +0000)]
langou [Wed, 10 Nov 2010 22:33:07 +0000 (22:33 +0000)]
update 2009 to 2010 in some files
julie [Mon, 8 Nov 2010 20:15:23 +0000 (20:15 +0000)]
Start getting ready for the release
julie [Mon, 8 Nov 2010 11:02:29 +0000 (11:02 +0000)]
Update CMake build
julie [Sun, 7 Nov 2010 20:15:40 +0000 (20:15 +0000)]
fix again some COMPLEX instead of CMPLX
julie [Sun, 7 Nov 2010 19:50:01 +0000 (19:50 +0000)]
fix again some COMPLEX instead of CMPLX
julie [Sun, 7 Nov 2010 18:30:58 +0000 (18:30 +0000)]
Fix a minor problem on csd - intrinsic function is CMPLX and not COMPLEX (same for double precision)
julie [Sun, 7 Nov 2010 18:08:29 +0000 (18:08 +0000)]
Correct bug0064 :: got a bug in divide and conquer (non convergence)
o see http://icl.cs.utk.edu/lapack-forum/viewtopic.php?f=2&t=529 (forum topic 529)
o Increase MAXIT to 200 (was 20 before)
o Add some XERBLA calls when INFO is not zero.
brian [Thu, 4 Nov 2010 02:11:45 +0000 (02:11 +0000)]
Incorporated CSD source and testing routines into SRC/Makefile, TESTING/Makefile, TESTING/EIG/Makefile, TESTING/EIG/xchkee.f; changes to comments in CSD routines
brian [Thu, 4 Nov 2010 01:12:34 +0000 (01:12 +0000)]
Removed nonexistent fourth matrix type from CSD test routines and csd.in
brian [Thu, 4 Nov 2010 00:46:07 +0000 (00:46 +0000)]
Modified TESTING/EIG/alahdg.f to test CS decomposition code
brian [Wed, 3 Nov 2010 23:07:29 +0000 (23:07 +0000)]
Added CS decomposition test files to TESTING
brian [Wed, 3 Nov 2010 23:02:29 +0000 (23:02 +0000)]
Added CS decomposition source files to SRC/
julie [Wed, 3 Nov 2010 17:55:43 +0000 (17:55 +0000)]
Commiting the 3 other precisions (single, complex, dcomplex) for sytri using Level BLAS 3.
Update testing accordingly
julie [Tue, 2 Nov 2010 18:53:38 +0000 (18:53 +0000)]
[xSYTRS/xSYSV] Hide the call to syconv inside trs2 to avoid changing the SYTRS interface.
Update the testing accordingly
[DSYTRI2] Comit dsytri2 to get some feedback
Update the testing accordingly
DSYTRI2 is the Level 3 blas Version of DSYTRI
The actual routine that does the work is DSYTRI2X (name can be changed)
DSYTRI2 is just a wrapper to allow to hide the 2D Workspace required by the routine.
The interface had to be changed to integrate the possibility of doing a workspace query.
DSYTRI2x implementation will be documented in a LAWN. This algorithm was inspired by the following paper:
"Families of Algorithms Related to the Inversion of a Symmetric Positive Definite Matrix"
PAOLO BIENTINESI Duke University and BRIAN GUNTER Delft University of Technology and ROBERT A. VAN DE GEIJN The University of Texas at Austin
julie [Thu, 30 Sep 2010 06:58:55 +0000 (06:58 +0000)]
Add hetrs2 for c and z, a Level BLAS 3 version of hetrs (same than rev 751)
julie [Wed, 25 Aug 2010 15:59:11 +0000 (15:59 +0000)]
Included bug fix provided by Zlatco on Jacobi SVD
Email from Zlatco on August 24th 2010:
The problem that was reported (with zero matrix) is caused by bad initialization to xLASSQ.
It should be ZERO, ONE and not ZERO, ZERO. In fact, I had it ZERO, ONE throughout
the complete development of the code and decided to change it to ZERO, ZERO a the very
end to make it "more elegant". That was stupid, because xLASSQ does not touch those
variables in case of zero vector, leaving scaling at ZERO, and in the nonzero case the scaling
is between ONE and SQRT(N). So, in case of zero vector, division by a variable that
is normally bigger than ONE causes division by zero.
I have corrected that and few other things, stress tested the code and it should be OK now.
README:
i) In xgejsv.f and xgesvj.f input parameters SCALE and
SUMSQ in xlassq.f are now initially set as SCALE = ZERO, SUMSQ=ONE.
Setting them both to zero (without carefully reading xlassq.f) caused
problems with exactly zero columns.
ii) There was a problem in the branch that computes only SIGMA and U of a
rank deficient matrix. The computed numerical rank (NR) was incorrectly
written as N in parameter lists of the corresponding calls.
iii) In xgsvj0.f, xgsvj1.f testing the input parameters is changed to prevent
unnecessarily negative INFO in some situations.
iv) Minor changes, renaming some variables etc.
langou [Tue, 17 Aug 2010 15:45:24 +0000 (15:45 +0000)]
Array out-of-bounds reference in xLAQR5.
Bug report and fix from Mathew Cross (NAG) on Sat Aug 14 2010:
In the section of the code "Special case: 2-by-2 reflection (if needed)" the logical test
IF( BMP22 .AND. ( V( 1, M22 ).NE.ZERO ) )
must be split into a nested test
IF (BMP22) THEN, IF (V(1,M22).NE.ZERO) THEN...
If .NOT. BMP22 then M22 can exceed the second extent of V (and recall that logical expressions can be evaluated in any order in Fortran).
See http://icl.cs.utk.edu/lapack-forum/viewtopic.php?f=2&t=1949.
julie [Tue, 10 Aug 2010 16:57:20 +0000 (16:57 +0000)]
Patch provided by the kitware team on Aug 5th (Brad King and Bill Hoffman)
Add the install rules and exports the targets.
Now one can write
find_package(LAPACK 3.2.2)
in another project to find either the LAPACK build tree or the
install tree.
julie [Tue, 10 Aug 2010 16:22:10 +0000 (16:22 +0000)]
Various comment fixes
langou [Mon, 9 Aug 2010 16:19:34 +0000 (16:19 +0000)]
Adding a hint on the data storage required for band matrices in xLASCL.
julie [Wed, 7 Jul 2010 17:27:28 +0000 (17:27 +0000)]
Split some lines (continue)
julie [Wed, 7 Jul 2010 17:24:08 +0000 (17:24 +0000)]
Split some lines
julie [Wed, 7 Jul 2010 16:16:15 +0000 (16:16 +0000)]
Add static/dynamic library, package support and rearrange source files
julie [Fri, 2 Jul 2010 23:39:07 +0000 (23:39 +0000)]
Time has come to have the fortran90 slamch and dlamch in the lapack package.
Jason (Riedy) wrote our ( ... his? :) ) ideas about it three years ago:
http://www.netlib.org/lapack-dev/lapack-coding/program-style.html#id2537289
Piotr (Luszczek) has written two subroutines, tested them on few platforms, collected the result on his webpage, and sent emails to the lapackers a few times. See:
http://www.cs.utk.edu/~luszczek/lapack/lamch.html
Theses slamch.f and dlamch.f subroutines were taken from PLASMA-2.1.0.
Change to the LAPACK library:
* move the current LAPACK subroutine slamch.f (resp dlamch.f) as
slamchf77.f (resp. dlamchf77.f),
* take the new slamch.f subroutines (resp. dlamch.f), remove the PLASMA
header, have a LAPACK header, and insert the new routines in the
library.
Minor:
* I would leave these routines compiled with the NOOPT flag.
Problem:
* CLAPACK: no idea how CLAPACK's going to handle this. CLAPACK can rely on
IEEE arithmetic, can relay on float.h, or can rely on the previous
xlamch.f
julie [Fri, 2 Jul 2010 19:19:01 +0000 (19:19 +0000)]
Corrct bug0060: Typo in TESTING/EIG/dchkee.f and TESTING/EIG/zchkee.f (bug report sent by Ake Sandgren to lapackers on July 1st 2010)
julie [Thu, 24 Jun 2010 18:23:57 +0000 (18:23 +0000)]
Fix bug0060 :: Bug in dtgsy2, missing IWORK call
bug report and fix sent by Vasile Sima on 24 Feb 2009 to "lapack@cs.utk.edu".
The error is that "IWORK" must appear in the line 640. (It was included in the 1999 version.)
Note that the statement IE = ( I+1 ) - 1 is strange; also, in other similar place, IWORK is used like below.
julie [Thu, 24 Jun 2010 14:38:30 +0000 (14:38 +0000)]
Fix Bug0059
bug report and fix sent by Alexander Kobotov (Intel) on Wed, 23 June 2010 to "lapack@cs.utk.edu".
ZGELSD crashes on large matrices (eq M=N=NHRS>=88), if real workspace allocated exactly as reported on workspace query.
Root cause is wrong estimation of real workspace size in ZLALSA (on path zgelsd->zlalsd->zlalsa). It assumes that RWORK array length should be max( N, (SMLSZ+1)*NRHS*3 ), where SMLSIZ=25. But in fact the function calls zlals0 which requires RWORK to be ( K*(1+NRHS) + 2*NRHS ), where K could be as large as number of columns in matrix A.
The same is actual for CGELSD.
julie [Wed, 23 Jun 2010 17:25:30 +0000 (17:25 +0000)]
Update date and version for 3.2.2 release
langou [Tue, 22 Jun 2010 22:08:36 +0000 (22:08 +0000)]
Corrected a bug in SBDSDC and DBDSDC.
The routine was returning with INFO = 0 while a failure of convergence should
have been reported with INFO > 0.
The bug has been around for quite a while and has been difficult to reproduce.
More information:
(*) bug0025 :: serious problem in DGESDD: DGESDD returns negative singular values with INFO = 0
o reported by Guy Bencteux on Sat Dec 06 2008
o see forum topic 847
o Julie : CANNOT REPRODUCE THE PROBLEM
o on Sat Jun 19 2010, Bruno Pinçon from ESIAL, reported another matrix with the same problems
o see forum topic 1868
o we can reproduce the problem with on MacOS with gfortran reference LAPACK
and vecLib BLAS, we can not reproduce the problem with reference LAPACK and reference BLAS.
o A patch has been proposed by Julien Langou. (See forum topic 1868.)
o Under review by other lapackers.
o Note: there is strong evidence that the bug of Guy Bencteux and this one
are the same, although we were never able to reproduce Guy's problem. So
we assume Guy's problem gone! (And send an email to Guy to inform him.)
julie [Mon, 21 Jun 2010 22:25:09 +0000 (22:25 +0000)]
Update CMAKE build with new routines
langou [Mon, 21 Jun 2010 21:06:42 +0000 (21:06 +0000)]
OK. So I got upset and did a
grep "an singular value" *f
in our SRC files to fix them all.
Here we go.
langou [Mon, 21 Jun 2010 20:47:23 +0000 (20:47 +0000)]
another typo
langou [Mon, 21 Jun 2010 20:32:41 +0000 (20:32 +0000)]
typo in the comment
julie [Fri, 18 Jun 2010 22:48:07 +0000 (22:48 +0000)]
Step 2 of xlarfp: add new routines and add same test code plus check R(i,i) is nonnegative and real
julie [Fri, 18 Jun 2010 00:19:59 +0000 (00:19 +0000)]
Step 1 of xlarfp : back out the old changes (need to run testing before going on)
julie [Tue, 15 Jun 2010 17:09:03 +0000 (17:09 +0000)]
Missing local variable declaration (IINFO)
julie [Tue, 15 Jun 2010 16:53:28 +0000 (16:53 +0000)]
Missing local variable declaration