julie [Wed, 25 Apr 2012 05:14:31 +0000 (05:14 +0000)]
Fix small problem detected by user Yao Toa. sent to the LAPACK mailing list on April 23th 2012
It seems that this one has been around forever
============
hi.
i found a subtle difference between dsyevd.f and ssyevd.f when using lapack 3.4.1.
dsyevd updates LOPT after calling dsytrd and dlacpy. but those codes are not visible in ssyevd.f, cheevd.f and zheevd.f.
pls refer to line 329, 344 in dsyevd.f.
i wonder whether those codes are necessary, because dsyevd has precalculated LOPT with at least 1+6*N+2*N**2.
if those codes must be there, why not for ssyevd?
thanks in advance.
Yao Tao
james [Mon, 23 Apr 2012 23:16:24 +0000 (23:16 +0000)]
modified exceptional shift for complex versions - solves problem of nan's appearing on some platforms, most notably IBM/XLF, causing an infinite loop in xLARTG (which also should be fixed by enforcing a max iteration count when computing SCALE)
julie [Mon, 23 Apr 2012 21:33:19 +0000 (21:33 +0000)]
Fix problems in comments found by Alexander Kobotov
Just taking a quick look on the new release I noticed some minor issues there, which probably caused by a generation script:
- If you explore diff for files (c/z)gbrfsx, cgbsvx, cgbsvxx, cheequb, clanhf, zheequb you could find that number of datatype descriptions in documentation were changed to incorrect one (DOUBLE PRECISION instead of COMPLEX, or COMPLEX*16 instead of just COMPLEX).
+ cunbdb has CMPLX instead of COMPLEX for X12 parameter.
+ zggevx RWORK become REAL instead of correct DOUBLE PRECISION
- Number of files got following string "/ output)", which seems meaningless. Just grep for it.
julie [Fri, 20 Apr 2012 19:08:58 +0000 (19:08 +0000)]
Fix XLF flags that were causing test zgg to hang
james [Thu, 19 Apr 2012 15:30:39 +0000 (15:30 +0000)]
put FOUR parameter back since it is used in this routine
julie [Wed, 18 Apr 2012 19:09:31 +0000 (19:09 +0000)]
rearrange the test (Julien prefers it that way)
julie [Wed, 18 Apr 2012 16:37:50 +0000 (16:37 +0000)]
Update date and revision number
julie [Wed, 18 Apr 2012 16:35:07 +0000 (16:35 +0000)]
Correct bug sent by NAG people
Got a new bug for you! Mick Pont found this problem in DLAED6. The code in question is the 40 loop - when DSCALE(I)=TAU you get a divide by zero (rare in practice). This can cause some compilers to immediately stop, e.g. the Sun compiler.
Mick proposed solution is below:
DO 40 I = 1, 3
IF (DSCALE( I ).NE.TAU) THEN
TEMP = ONE / ( DSCALE( I )-TAU )
TEMP1 = ZSCALE( I )*TEMP
TEMP2 = TEMP1*TEMP
TEMP3 = TEMP2*TEMP
TEMP4 = TEMP1 / DSCALE( I )
FC = FC + TEMP4
ERRETM = ERRETM + ABS( TEMP4 )
DF = DF + TEMP2
DDF = DDF + TEMP3
ELSE
* On rare occasions dscale(i) can be exactly equal to
* tau, leading to division by zero. If no trap occurs,
* there is no problem; the quantities above all overflow
* and the test on abs(f) below sends you to the end
* with good results. If a trap occurs, though, the
* user program will stop. Avoid that happening by
* jumping directly out.
GO TO 60
END IF
40 CONTINUE
This seems to work OK in our testing.
james [Tue, 17 Apr 2012 17:26:31 +0000 (17:26 +0000)]
modified exceptional shift strategy so that QZ now works for various pencils (see netlib.org/lapack/Errata/vrac/lapack_known_issues.html)
julie [Fri, 13 Apr 2012 18:22:32 +0000 (18:22 +0000)]
Update version number
julie [Thu, 12 Apr 2012 23:06:02 +0000 (23:06 +0000)]
Fix small issue with lapacke built
julie [Thu, 12 Apr 2012 21:07:52 +0000 (21:07 +0000)]
Add -qnosave option for xlf compiler (Thanks Rodney)
julie [Thu, 12 Apr 2012 00:56:00 +0000 (00:56 +0000)]
Follow up to rev r1130
Fix bug bug0088 reported by Mike Pont from NAG on the forum
(see http://icl.cs.utk.edu/lapack-forum/viewtopic.php?f=13&t=2893)
Actually there were a lot of problems regarding arguments checking.
I tried to correct most of them.
Apply the fix propose to all x[he/sy]rfsx.f routines
- Use IGNORE_CWISE as suggested to prevent use of unitialize variable PARAMS
I also appied the previous TESTING fix to all routines
INFO has new value in ZHERFSX (see description of INFO between ZHESVX and ZHESVXX)
This is set on line 634 (IF ( INFO .LE. N ) INFO = N + J) of zherfsx.f
And this is not handled by the testing LIN/zdrvhex.f
I just add .AND. INFO.LE.N at line 638 to avoid raising an error when INFO = N + J
At the moment, I would recommand a further look at those routines.
ZHE, ZSY led to 182 Tests failing to pass the threshold
and the same for complex
better than before, but still....
james [Wed, 11 Apr 2012 23:08:06 +0000 (23:08 +0000)]
removed comment regarding A being modified and restored - this is no longer the case with the changes made to xLARFT
julie [Wed, 11 Apr 2012 20:16:24 +0000 (20:16 +0000)]
Remove unused variables
julie [Wed, 11 Apr 2012 19:43:59 +0000 (19:43 +0000)]
Remove unused parameters
james [Wed, 11 Apr 2012 01:50:07 +0000 (01:50 +0000)]
added code to handle N=1 case to fix divide by zero problem that occurs
when the single (diagonal) element is negative
see: http://icl.cs.utk.edu/lapack-forum/archives/lapack/msg01195.html
julie [Tue, 10 Apr 2012 20:59:35 +0000 (20:59 +0000)]
Fix call to GEMQRT (no lwork) and lwork declarations
julie [Tue, 10 Apr 2012 20:21:27 +0000 (20:21 +0000)]
Fix External Subroutines declarations
julie [Thu, 5 Apr 2012 05:47:38 +0000 (05:47 +0000)]
Add the python script for LAPACK Summary output to CTEST
james [Thu, 5 Apr 2012 02:53:32 +0000 (02:53 +0000)]
changed SVD test threshold to 50.0 and removed SEP test for matrix type 9 so that all tests pass
james [Tue, 3 Apr 2012 18:11:13 +0000 (18:11 +0000)]
changed weights so that the badly conditioned tests (which always fail) are avoided for SXV, DXV, CXV, ZXV.
james [Tue, 3 Apr 2012 15:29:34 +0000 (15:29 +0000)]
Fix provided by Hong Bo Peng for bug0026
julie [Mon, 2 Apr 2012 21:58:34 +0000 (21:58 +0000)]
Undoing unvoluntary change commited in 1237
julie [Mon, 2 Apr 2012 21:44:14 +0000 (21:44 +0000)]
julie [Thu, 22 Mar 2012 22:55:22 +0000 (22:55 +0000)]
Following Mathieu's request, some part of lapacke.h were moved to lapacke_utils.h
(the definition of ABS, MAX, MIN, etc...)
Those were conflicting with PLASMA internal definitions.
LAPCKE Routines are now just including lapacke_utils.h which in turn includes lapacke.h
julie [Thu, 22 Mar 2012 02:05:18 +0000 (02:05 +0000)]
Correct problem in Workspace calculation
julie [Tue, 20 Mar 2012 21:31:07 +0000 (21:31 +0000)]
Correct bug 0090 Need to unscale if necessary when there is an error in DHGEQZ (QZ iteration failed)
* bug report by Hong Bo Peng Sandgren, on 03-19-2012.
* See link:http://icl.cs.utk.edu/lapack-forum/archives/lapack/msg01257.html[LAPACK Mailing list msg 01257]
I am doing some work with DGGEV. When I check the return msg and the actual code, I found something may be wrong. Here is part of comments in the header of DGGEV.F.
* INFO (output) INTEGER
* = 0: successful exit
* < 0: if INFO = -i, the i-th argument had an illegal value.
* = 1,...,N:
* The QZ iteration failed. No eigenvectors have been
* calculated, but ALPHAR(j), ALPHAI(j), and BETA(j)
* should be correct for j=INFO+1,...,N.
* > N: =N+1: other than QZ iteration failed in DHGEQZ.
* =N+2: error return from DTGEVC.
When INFO = 1...N, there is an error in DHGEQZ (QZ iteration failed). From the code, we can see it jumps to label 110 then set WORK(1) and return.
But in case of we scaled the matrix, we still need to undo scale for the output array ALPHAR, ALPHAI and BETA for those values j=INFO+1,...,N.
In DGEEVX, we can see that it jumps to label 50 in case of DHSEQR failure and then undo scale before return.
julie [Tue, 20 Mar 2012 04:23:55 +0000 (04:23 +0000)]
Add csyr and zsyr needed by the PLASMA project
james [Thu, 23 Feb 2012 19:34:36 +0000 (19:34 +0000)]
modified so that V is [in] only instead of [in/out]
julie [Fri, 17 Feb 2012 17:23:57 +0000 (17:23 +0000)]
Change CMAKE configuration for LAPACKE
CMAKE now can find the Fortran Mangling automatically (no need of extra flags)
with the module FortranCInterface and create the necessary header.
Needed to make some adjustements with the routine name.
Added a file lapacke_mangling_with_flags.h that is used with Makefile build
lapacke.h now requires lapacke_mangling.h
- the file is created by CMAKE if CMAKE is used
- the file is copied from lapacke_mangling_with_flags if Makefile is used
julie [Thu, 26 Jan 2012 19:59:40 +0000 (19:59 +0000)]
Fix Makefile in LIN
julie [Sat, 21 Jan 2012 13:48:21 +0000 (13:48 +0000)]
Fix Typo
james [Fri, 20 Jan 2012 15:12:13 +0000 (15:12 +0000)]
Fixed problem with optimizer breaking error checking, now using F90 EPSILON intrinsic.
Thanks to Harald Anlauf for providing the solution.
james [Fri, 20 Jan 2012 03:06:12 +0000 (03:06 +0000)]
replaced calculation of EPS with F90 call to EPSILON intrinsic
julie [Thu, 19 Jan 2012 15:16:39 +0000 (15:16 +0000)]
Update CMAKE build
james [Wed, 18 Jan 2012 22:38:18 +0000 (22:38 +0000)]
Fixed QRT routine testing
langou [Tue, 17 Jan 2012 04:46:18 +0000 (04:46 +0000)]
typo
igor175 [Thu, 12 Jan 2012 23:05:35 +0000 (23:05 +0000)]
added a comment to *chksy_rook.f
igor175 [Thu, 12 Jan 2012 07:52:50 +0000 (07:52 +0000)]
introduced CALL XLAENV( 2, 2 ) in zchksy.f and cchksy.f in order to make them uniform with schksy.f and dchksy.f and *chksy_rook (it was discussed with Julien in an email)
igor175 [Thu, 12 Jan 2012 07:30:43 +0000 (07:30 +0000)]
added sdrvsy_rook.f cdrvsy_rook.f zdrvsy_rook.f to LIN/CMakeLists.txt
igor175 [Thu, 12 Jan 2012 07:16:18 +0000 (07:16 +0000)]
small fixes, removed unused varibales in ddrvsy_rook.f zdrvsy_rook.f sdrvsy_rook.f
igor175 [Thu, 12 Jan 2012 07:14:31 +0000 (07:14 +0000)]
added a test for double precision complex SV driver for symmetric indefinite matrices with rook pivoting
igor175 [Thu, 12 Jan 2012 06:20:58 +0000 (06:20 +0000)]
added a test for double precision complex SV driver for symmetric indefinite matrices with rook pivoting
julie [Thu, 12 Jan 2012 01:46:17 +0000 (01:46 +0000)]
Add an option LAPACKE_WITH_TMG that will generate the LAPACKE with the TMG routines needed in plasma (by default regular LAPACKE with only LAPACK routines
julie [Thu, 12 Jan 2012 01:27:47 +0000 (01:27 +0000)]
Add the test for single precision driver routines for symmetric indefinite matrices with rook pivoting in CMAKE
igor175 [Wed, 11 Jan 2012 23:53:07 +0000 (23:53 +0000)]
added the test for single precision driver routines for symmetric indefinite matrices with rook pivoting
julie [Wed, 11 Jan 2012 21:57:01 +0000 (21:57 +0000)]
Fix LAPACKE makefile to only include XBLAS routine if USEXBLAS is defined
julie [Tue, 10 Jan 2012 23:15:10 +0000 (23:15 +0000)]
Adding CMAKE Support for LAPACKE.
Now we can generate dll for LAPACK and LAPACKE directly for Mingw so that FORTRAN compiler is longer needed.
Because LAPACKE contains some routines from MATGEN (for PLASMA), LAPACKE will requires the tmglib library.
Add some LAPACK 3.4.0 routines were missing in the CMAKE LAPACK build.
julie [Sun, 8 Jan 2012 05:27:18 +0000 (05:27 +0000)]
Fix minor problem in some comments...
julie [Sat, 7 Jan 2012 06:00:05 +0000 (06:00 +0000)]
Fix bug0085 - xGESVD Problem in Workspace computation
julie [Fri, 6 Jan 2012 06:25:39 +0000 (06:25 +0000)]
Add Rook pivoting routines to LAPACKE
julie [Fri, 6 Jan 2012 04:47:10 +0000 (04:47 +0000)]
Update CMAKE build for Rook Pivoting Routines + correct minor fix
julie [Fri, 6 Jan 2012 03:53:11 +0000 (03:53 +0000)]
Modifications following email from PLASMA Team (Mathieu)
igor175 [Wed, 4 Jan 2012 08:23:39 +0000 (08:23 +0000)]
added spacing between argumets in subroutine call
igor175 [Wed, 4 Jan 2012 08:20:05 +0000 (08:20 +0000)]
changed error handler alaerh.f so that it recognizes ***'SV' instead of ***'SV ' for 'xSY', 'xSR' and 'xHE' test paths
igor175 [Wed, 4 Jan 2012 07:51:43 +0000 (07:51 +0000)]
added the tests, i.e. ddrvsy_rook.f for driver routines for symmetric indrfinite matrices with rook pivoting, included this tests in dchkaa.f and Makefile
igor175 [Tue, 3 Jan 2012 23:46:05 +0000 (23:46 +0000)]
fixed a typo in aladhd.f
julie [Tue, 3 Jan 2012 23:44:14 +0000 (23:44 +0000)]
Fix group problem for Level 2 BLAS routine in double precision
igor175 [Tue, 3 Jan 2012 23:27:40 +0000 (23:27 +0000)]
added 'SR' test path to aladhd.f for driver routines that correspond to symmetric indefinite matrices with rook pivoting
igor175 [Tue, 27 Dec 2011 06:12:22 +0000 (06:12 +0000)]
added 'SR' test path to TESTING/LIN/*errvx.f to test *SYSV_ROOK error exits
igor175 [Tue, 27 Dec 2011 05:25:02 +0000 (05:25 +0000)]
added a special block diagonal matrix type to tests for COMPLEX*16 symmetric indefinite factorization routines with rook pivoting
igor175 [Tue, 27 Dec 2011 05:10:16 +0000 (05:10 +0000)]
added a special block diagonal matrix type to tests for COMPLEX symmetric indefinite factorization routines with rook pivoting
igor175 [Mon, 26 Dec 2011 07:36:36 +0000 (07:36 +0000)]
changed a comment in cchkaa.f dchkaa.f schkaa.f
igor175 [Mon, 26 Dec 2011 07:32:09 +0000 (07:32 +0000)]
fixed a typo in TESTING/LIN/zerrsy.f
igor175 [Mon, 26 Dec 2011 06:56:51 +0000 (06:56 +0000)]
changed 'Complex precision' into 'Zomplex precision' in TESTING/LIN/zchksy_rook.f
igor175 [Mon, 26 Dec 2011 06:38:03 +0000 (06:38 +0000)]
added 'ZSR' test path to test COPLEX*16 routines with rook pivoting in TESTING/LIN/zchksy.f, also added this path to the driver file ztest.in
igor175 [Mon, 26 Dec 2011 06:37:44 +0000 (06:37 +0000)]
added 'ZSR' test path to test COPLEX*16 routines with rook pivoting in TESTING/LIN/zchksy.f, also added this path to the driver file ztest.in
igor175 [Mon, 26 Dec 2011 06:22:02 +0000 (06:22 +0000)]
added TESTING/LIN/zchksy.f and included in the makefile
igor175 [Mon, 26 Dec 2011 03:31:49 +0000 (03:31 +0000)]
line formatting fixes to schksy_rook.f and dchksy_rook.f
igor175 [Mon, 26 Dec 2011 03:23:48 +0000 (03:23 +0000)]
updated tests in for COMPLEX symmetric indefinite matrix routines with rook pivoting in TESTING/LIN/cchksy_rook.f
igor175 [Mon, 26 Dec 2011 02:59:48 +0000 (02:59 +0000)]
fixed a typo in a comment in LIN/cchkaa.f
igor175 [Mon, 26 Dec 2011 02:45:13 +0000 (02:45 +0000)]
added 'CSR' tet path to test COMPLEX routines for symmetric indefinite matrices with rook pivoting to the main test program TESTING/LIN/cchkaa.f and updated driver file ctest.in
igor175 [Mon, 26 Dec 2011 02:26:07 +0000 (02:26 +0000)]
added cchksy_rook.f in TESTING/LIN/ and included it in Makefile
igor175 [Mon, 26 Dec 2011 02:25:57 +0000 (02:25 +0000)]
added cchksy_rook.f in TESTING/LIN/ and included it in Makefile
igor175 [Mon, 26 Dec 2011 01:31:15 +0000 (01:31 +0000)]
fixed a call with a wrong number of arguments to *SYTRI_ROOK in schksy_rook.f dchksy_rook.f
igor175 [Mon, 26 Dec 2011 01:03:57 +0000 (01:03 +0000)]
corrected a type in a comment in TESTING/LIN/schksy_rook.f
igor175 [Mon, 26 Dec 2011 00:49:05 +0000 (00:49 +0000)]
changed comment in dchksy.f schksy.f
igor175 [Sun, 25 Dec 2011 23:50:19 +0000 (23:50 +0000)]
changed the variable name in TESTING/LIN/schksy_rook.f
igor175 [Sun, 25 Dec 2011 23:45:24 +0000 (23:45 +0000)]
changed the order of variable decrarations in TESTING/LIN/schksy_rook.f
igor175 [Sun, 25 Dec 2011 23:37:10 +0000 (23:37 +0000)]
fixed a typo 0.0E+o --> 0.0D+0 in TESTING/LIN/zchksy.f
igor175 [Sun, 25 Dec 2011 23:23:07 +0000 (23:23 +0000)]
added CZERO named constat to TESTING/LIN/zchksy.f
igor175 [Sun, 25 Dec 2011 23:13:53 +0000 (23:13 +0000)]
added CZERO constant to cchksy.f
igor175 [Sun, 25 Dec 2011 23:12:04 +0000 (23:12 +0000)]
updated a comment in dchksy.f and schksy.f
igor175 [Sun, 25 Dec 2011 06:07:19 +0000 (06:07 +0000)]
added 'SSR' test path to test symmetric indefinite factorization routines with rook pivoting to TESTING/LIN/schkaa.f
igor175 [Sun, 25 Dec 2011 06:01:17 +0000 (06:01 +0000)]
added 'SSR' test path for symmetric indefinite factorization routines with rook pivoting into stest.in driver file
igor175 [Sun, 25 Dec 2011 05:58:00 +0000 (05:58 +0000)]
added 'DSR' test path for symmetric indefinite factorization routines with rook pivoting into dtest.in driver file
igor175 [Sun, 25 Dec 2011 05:54:46 +0000 (05:54 +0000)]
added schksy_rook.o to TESTING/LIN/Makefile
igor175 [Sun, 25 Dec 2011 05:51:07 +0000 (05:51 +0000)]
added schksy_rook.o to TESTING/LIN/Makefile
igor175 [Sun, 25 Dec 2011 05:49:41 +0000 (05:49 +0000)]
added schksy_rook.o to TESTING/LIN/Makefile
igor175 [Sun, 25 Dec 2011 05:46:44 +0000 (05:46 +0000)]
changed comments in dchkaa.f
igor175 [Sun, 25 Dec 2011 05:27:46 +0000 (05:27 +0000)]
added schksy_rook.f
igor175 [Sun, 25 Dec 2011 04:50:57 +0000 (04:50 +0000)]
added a few comments in routines schksy.f dchksy.f cchksy.f zchksy.f
igor175 [Sun, 25 Dec 2011 04:01:51 +0000 (04:01 +0000)]
fixed a bug in the counter for the number of completed tests in schksy.f dchksy.f cchksy.f zchksy.f
igor175 [Sun, 25 Dec 2011 03:14:59 +0000 (03:14 +0000)]
final version of the routine dchksy_rook.f that tests dsytrf_rook.f dsytri_rook.f dsytrs_rook.f dsycon_rook.f
igor175 [Sun, 25 Dec 2011 02:05:46 +0000 (02:05 +0000)]
fixed a typo in serrsy.f cerrsy.f zerrsy.f
igor175 [Sun, 25 Dec 2011 01:52:41 +0000 (01:52 +0000)]
fixed a typo in alahd.f
igor175 [Sun, 25 Dec 2011 01:45:59 +0000 (01:45 +0000)]
added 'SR' test path for symmetic indefinite factorization routines with rook pivoting to alaerh.f
igor175 [Sun, 25 Dec 2011 01:18:39 +0000 (01:18 +0000)]
added new 'SR' test path (that sorresponds to symmetric indefinite factorization routines with rook pivoting) to the alahd.f routine that prints header information for different test paths
igor175 [Sun, 25 Dec 2011 01:15:10 +0000 (01:15 +0000)]
added rook pivoting routines to the tests that check error exits for symmetric indefinite factorization routines, i.e. to serrsy.f derrsy.f cerrsy.f zerrsy.f