platform/upstream/lapack.git
13 years agoFix Bug 0073: [Re] Add dummy routine in timer to avoid compiler problem
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.

13 years agoMove CMake files to a subdirectory
julie [Mon, 7 Feb 2011 14:54:28 +0000 (14:54 +0000)]
Move CMake files to a subdirectory

- Brad King (Kitware)

13 years agoLink tmglib test library to lapack
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)

13 years agoOrganize binaries into bin and lib directories
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)

13 years agoRestore CMake packaging removed in r858
julie [Mon, 7 Feb 2011 14:54:19 +0000 (14:54 +0000)]
Restore CMake packaging removed in r858

- Brad King (Kitware)

13 years agoRevert "Restore CMake packaging removed in r858"
julie [Mon, 7 Feb 2011 14:54:16 +0000 (14:54 +0000)]
Revert "Restore CMake packaging removed in r858"

This reverts commit e725dc754dd87ed45f21ba6981fca6dbc0530aa3.

13 years agoRevert "Organize binaries into bin and lib directories"
julie [Mon, 7 Feb 2011 14:54:14 +0000 (14:54 +0000)]
Revert "Organize binaries into bin and lib directories"

This reverts commit e3b5f531553c176a009f41b6a312b0c11b955fd6.

13 years agoRevert "Link tmglib test library to lapack"
julie [Mon, 7 Feb 2011 14:54:11 +0000 (14:54 +0000)]
Revert "Link tmglib test library to lapack"

This reverts commit 5070d8d0b7690496561a26f5849d6f80a8727d93.

13 years agoRevert "Move CMake files to a subdirectory"
julie [Mon, 7 Feb 2011 14:54:09 +0000 (14:54 +0000)]
Revert "Move CMake files to a subdirectory"

This reverts commit bc425c443232cf9737afcce38753f79963d31e0a.

13 years agoMove CMake files to a subdirectory
julie [Mon, 7 Feb 2011 14:37:01 +0000 (14:37 +0000)]
Move CMake files to a subdirectory

13 years agoLink tmglib test library to lapack
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.

13 years agoOrganize binaries into bin and lib directories
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.

13 years agoRestore CMake packaging removed in r858
julie [Mon, 7 Feb 2011 14:36:50 +0000 (14:36 +0000)]
Restore CMake packaging removed in r858

13 years agoFix bug 0072 reported by Inge Gutheil on February 3rd 2011
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.

13 years agoChange from Christof (Voemel) sent on Mon, 31 Jan 2011.
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!

13 years agoFix bug0070 : IWORK dimension is incorrect
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.

13 years agoCorrect bug0069
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)

13 years agoSame for hetrs2 routines
julie [Thu, 27 Jan 2011 14:25:04 +0000 (14:25 +0000)]
Same for hetrs2 routines

13 years agoFollow-up: fix for new routines to handle LDA
julie [Thu, 27 Jan 2011 14:21:35 +0000 (14:21 +0000)]
Follow-up: fix for new routines to handle LDA
See bug0067

13 years ago1) Je viens de modifier le fichier timer_dsytri2.c de telle sorte a ce qu'il
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

13 years agobon maintenant, ca compile ... (desole)
langou [Wed, 26 Jan 2011 05:49:27 +0000 (05:49 +0000)]
bon maintenant, ca compile ... (desole)

13 years agoJ'ai lu le code vite fait. Comme ca, ca devrait marcher. Je n'ai pas verifie.
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.

13 years agoInclude Zlatko changes following Paul Roberts from NAG report
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.

13 years agoCorrect multiple definition in the lapack lib (See forum topic 2099 - Bruno)
julie [Mon, 24 Jan 2011 20:05:41 +0000 (20:05 +0000)]
Correct multiple definition in the lapack lib (See forum topic 2099 - Bruno)

13 years agoAdding new hetri routines
julie [Thu, 20 Jan 2011 17:33:46 +0000 (17:33 +0000)]
Adding new hetri routines

13 years agoRemove the last compiler directive
julie [Thu, 13 Jan 2011 12:05:18 +0000 (12:05 +0000)]
Remove the last compiler directive

13 years agoRemove outdated compiler directives
julie [Wed, 12 Jan 2011 17:34:06 +0000 (17:34 +0000)]
Remove outdated compiler directives

13 years agoSuppress warning because of undefined variable
julie [Tue, 11 Jan 2011 14:10:14 +0000 (14:10 +0000)]
Suppress warning because of undefined variable

13 years agoSuppress a warning from SUN compilers when building exclusively for your native
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)

13 years agoSuppress harmless linker warnings on IRIX + MIPSpro
julie [Sat, 8 Jan 2011 16:13:32 +0000 (16:13 +0000)]
Suppress harmless linker warnings on IRIX + MIPSpro

- Chuck Atkins (Kitware)

13 years agoRemoved output truncation on ctest submissions.
julie [Wed, 5 Jan 2011 03:28:27 +0000 (03:28 +0000)]
Removed output truncation on ctest submissions.

- Chuck Atkins (Kitware)

13 years agoFix object needed for targets in CMAKE build
julie [Tue, 4 Jan 2011 20:03:34 +0000 (20:03 +0000)]
Fix object needed for targets in CMAKE build

13 years agominor fix following compiler warnings: remove unused variable and change digit output...
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

13 years agominor fix: add comment to warn that vector and matrix arguments are not referenced...
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

13 years agoRe-worked the type size check to be much more compact
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)

13 years agoAdded acml_mv to the ACML link libraries
julie [Thu, 30 Dec 2010 23:11:32 +0000 (23:11 +0000)]
Added acml_mv to the ACML link libraries

- Chuck Atkins (Kitware)

13 years ago1. Adjusted regex checks in CheckLAPACKCompilerFlags.cmake to be more compact
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)

14 years agoDisplay the test's output to stdout after a run so it can be viewed on the dashboard.
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)

14 years ago1. Fixed a typo in FindBLAS for SGI (SCCL should have been SCSL) and 2. Fixed compi...
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)

14 years ago1. Added support for both IBM XL Fortran and IBM VisualAge Fortran
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)

14 years agoFixed a bug in the IBM compiler options (-ffixed-form -> -qfixed).
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)

14 years agoAdded checks disable floating point exceptions for GNU, Intel, Sun, and IBM compilers...
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)

14 years agoFixed FindBLAS for Sun Performance Library
julie [Tue, 21 Dec 2010 02:11:49 +0000 (02:11 +0000)]
Fixed FindBLAS for Sun Performance Library

- Chuck Atkins (Kitware)

14 years agoAdded a CTestCustom.cmake file to filter unwanted files from code coverage and suppre...
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)

14 years agoAdding Peng Du's name in the authors of the variants.
langou [Fri, 17 Dec 2010 00:09:40 +0000 (00:09 +0000)]
Adding Peng Du's name in the authors of the variants.

14 years ago1. Corrected the way linker flags from FindBLAS are being used
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)

14 years ago Merge some of Sebastien Fabbro's patch for CMAKE
julie [Wed, 15 Dec 2010 18:44:42 +0000 (18:44 +0000)]
 Merge some of Sebastien Fabbro's patch for CMAKE

14 years agoAdded compiler flags from FindBLAS.
julie [Wed, 15 Dec 2010 18:42:50 +0000 (18:42 +0000)]
Added compiler flags from FindBLAS.

14 years agominor modif on find BLAS
julie [Wed, 15 Dec 2010 18:08:26 +0000 (18:08 +0000)]
minor modif on find BLAS

14 years agoRemoved leftover debug messages from FindBLAS.cmake
julie [Wed, 15 Dec 2010 16:58:32 +0000 (16:58 +0000)]
Removed leftover debug messages from FindBLAS.cmake

14 years agoAdded support for external BLAS libraries in the CMake build.
julie [Wed, 15 Dec 2010 16:48:25 +0000 (16:48 +0000)]
Added support for external BLAS libraries in the CMake build.

14 years agoundoing my check, sorry
langou [Tue, 14 Dec 2010 07:17:24 +0000 (07:17 +0000)]
undoing my check, sorry

14 years agothis is a test
langou [Tue, 14 Dec 2010 07:16:58 +0000 (07:16 +0000)]
this is a test

14 years agoNew license file as agreed by email.
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.)

14 years agoFollow rencang's recommendation to fix bug 0064, set MAXIT to 64
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."

14 years agoFix line length
julie [Wed, 17 Nov 2010 22:57:18 +0000 (22:57 +0000)]
Fix line length

14 years agoFix typo in external routine name
julie [Wed, 17 Nov 2010 22:10:50 +0000 (22:10 +0000)]
Fix typo in external routine name

14 years agocorrect indentation
langou [Sun, 14 Nov 2010 15:46:03 +0000 (15:46 +0000)]
correct indentation

14 years agoimporve (?) comments
langou [Sun, 14 Nov 2010 15:35:07 +0000 (15:35 +0000)]
imporve (?) comments

14 years agotypos
langou [Sun, 14 Nov 2010 15:21:05 +0000 (15:21 +0000)]
typos

14 years ago Correct memory access in CSD found with -fbounds-check flag
julie [Sat, 13 Nov 2010 15:50:45 +0000 (15:50 +0000)]
 Correct memory access in CSD found with  -fbounds-check flag

14 years agopolish comments
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.

14 years ago(no commit message)
brian [Wed, 10 Nov 2010 23:11:43 +0000 (23:11 +0000)]

14 years agoupdate 2009 to 2010 in some files
langou [Wed, 10 Nov 2010 22:33:07 +0000 (22:33 +0000)]
update 2009 to 2010 in some files

14 years agoStart getting ready for the release
julie [Mon, 8 Nov 2010 20:15:23 +0000 (20:15 +0000)]
Start getting ready for the release

14 years agoUpdate CMake build
julie [Mon, 8 Nov 2010 11:02:29 +0000 (11:02 +0000)]
Update CMake build

14 years agofix again some COMPLEX instead of CMPLX
julie [Sun, 7 Nov 2010 20:15:40 +0000 (20:15 +0000)]
fix again some COMPLEX instead of CMPLX

14 years agofix 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

14 years agoFix a minor problem on csd - intrinsic function is CMPLX and not COMPLEX (same for...
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)

14 years agoCorrect bug0064 :: got a bug in divide and conquer (non convergence)
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.

14 years agoIncorporated CSD source and testing routines into SRC/Makefile, TESTING/Makefile...
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

14 years agoRemoved nonexistent fourth matrix type from CSD test routines and csd.in
brian [Thu, 4 Nov 2010 01:12:34 +0000 (01:12 +0000)]
Removed nonexistent fourth matrix type from CSD test routines and csd.in

14 years agoModified TESTING/EIG/alahdg.f to test CS decomposition code
brian [Thu, 4 Nov 2010 00:46:07 +0000 (00:46 +0000)]
Modified TESTING/EIG/alahdg.f to test CS decomposition code

14 years agoAdded CS decomposition test files to TESTING
brian [Wed, 3 Nov 2010 23:07:29 +0000 (23:07 +0000)]
Added CS decomposition test files to TESTING

14 years agoAdded CS decomposition source files to SRC/
brian [Wed, 3 Nov 2010 23:02:29 +0000 (23:02 +0000)]
Added CS decomposition source files to SRC/

14 years agoCommiting the 3 other precisions (single, complex, dcomplex) for sytri using Level...
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

14 years ago [xSYTRS/xSYSV] Hide the call to syconv inside trs2 to avoid changing the SYTRS inter...
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

14 years agoAdd hetrs2 for c and z, a Level BLAS 3 version of hetrs (same than rev 751)
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)

14 years agoIncluded bug fix provided by Zlatco on Jacobi SVD
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.

14 years agoArray out-of-bounds reference in xLAQR5.
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.

14 years agoPatch provided by the kitware team on Aug 5th (Brad King and Bill Hoffman)
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.

14 years agoVarious comment fixes
julie [Tue, 10 Aug 2010 16:22:10 +0000 (16:22 +0000)]
Various comment fixes

14 years agoAdding a hint on the data storage required for band matrices in xLASCL.
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.

14 years agoSplit some lines (continue)
julie [Wed, 7 Jul 2010 17:27:28 +0000 (17:27 +0000)]
Split some lines (continue)

14 years agoSplit some lines
julie [Wed, 7 Jul 2010 17:24:08 +0000 (17:24 +0000)]
Split some lines

14 years ago Add static/dynamic library, package support and rearrange source files
julie [Wed, 7 Jul 2010 16:16:15 +0000 (16:16 +0000)]
 Add static/dynamic library, package support and rearrange source files

14 years agoTime has come to have the fortran90 slamch and dlamch in the lapack package.
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

14 years agoCorrct bug0060: Typo in TESTING/EIG/dchkee.f and TESTING/EIG/zchkee.f (bug report...
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)

14 years agoFix bug0060 :: Bug in dtgsy2, missing IWORK call
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.

14 years agoFix Bug0059
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.

14 years agoUpdate date and version for 3.2.2 release
julie [Wed, 23 Jun 2010 17:25:30 +0000 (17:25 +0000)]
Update date and version for 3.2.2 release

14 years agoCorrected a bug in SBDSDC and DBDSDC.
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.)

14 years agoUpdate CMAKE build with new routines
julie [Mon, 21 Jun 2010 22:25:09 +0000 (22:25 +0000)]
Update CMAKE build with new routines

14 years agoOK. So I got upset and did a
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.

14 years agoanother typo
langou [Mon, 21 Jun 2010 20:47:23 +0000 (20:47 +0000)]
another typo

14 years agotypo in the comment
langou [Mon, 21 Jun 2010 20:32:41 +0000 (20:32 +0000)]
typo in the comment

14 years agoStep 2 of xlarfp: add new routines and add same test code plus check R(i,i) is nonneg...
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

14 years ago Step 1 of xlarfp : back out the old changes (need to run testing before going on)
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)

14 years ago Missing local variable declaration (IINFO)
julie [Tue, 15 Jun 2010 17:09:03 +0000 (17:09 +0000)]
 Missing local variable declaration (IINFO)

14 years ago Missing local variable declaration
julie [Tue, 15 Jun 2010 16:53:28 +0000 (16:53 +0000)]
 Missing local variable declaration