langou [Sun, 21 May 2017 23:47:11 +0000 (01:47 +0200)]
Merge pull request #154 from echeresh/xlange_lapacke
Avoid conversion between layouts in lapacke_?lange_work
echeresh [Sun, 21 May 2017 12:11:52 +0000 (05:11 -0700)]
Avoid conversion between layouts in lapacke_?lange_work
Julien Langou [Thu, 18 May 2017 09:09:45 +0000 (11:09 +0200)]
Fix #147: xlapy2 not propagating nans
xLAPY2 now returns a NaN whenever input variables X or Y are NaNs.
The previous xLAPY2 was relying on FORTRAN INTRINSIC MAX and MIN to behave in a
certain way with NaNs (i.e. return a NaN whenever X or Y are NaN) and this
behavior is not observed on some (most?) compilers.
We handle the NaN behavior of xLAPY2 by checking for NaNs at the start of the
function.
Thanks to Andreas Noack for providing report and sample code to demonstrate the
problem.
langou [Sat, 13 May 2017 12:21:48 +0000 (14:21 +0200)]
Merge pull request #149 from JeffreySax/master
Bug fix in SLAMSWLQ; fix type mismatches.
JeffreySax [Tue, 9 May 2017 14:05:30 +0000 (10:05 -0400)]
Bug fix in SLAMSWLQ; fix type mismatches.
- Fix: SLAMSWLQ calls DGEMLQT instead of SGEMLQT.
- Use dummy variable for ?LANGE work array argument in [CS]GETSLS.
- Use 1-element array for workspace query in ?GETSLS.
- Fix PARAMETER declaration type mismatches in ILASLC, IPARAM2STAGE,
SGELQT3, ZHECON_3, ZHECON_ROOK, ZHETRI2X.
langou [Thu, 4 May 2017 12:56:03 +0000 (14:56 +0200)]
Merge pull request #144 from tmijieux/lapacke/fix_tpmqrt_work_allocation
Fix issue #143 (Invalid ?tpmqrt workspace allocation)
Thomas Mijieux [Thu, 4 May 2017 12:32:29 +0000 (14:32 +0200)]
Fix issue #143 (Invalid ?tpmqrt workspace allocation)
langou [Tue, 2 May 2017 20:47:19 +0000 (22:47 +0200)]
Merge pull request #142 from iyamazaki/master
fix for issue #141 (how to detect singularity in T).
iyamazaki [Mon, 1 May 2017 18:26:41 +0000 (14:26 -0400)]
fix for issue #141 (how to detect singularity in T).
Julien Langou [Thu, 13 Apr 2017 13:44:00 +0000 (15:44 +0200)]
This is related to issue #42.
This is a fix for double precision. Need to fix S, C and Z now.
Julien Langou [Thu, 13 Apr 2017 09:04:48 +0000 (11:04 +0200)]
Fix #52
Added in comment of xLARRV
Note: VU is currently not used by this implmentation of DLARRV, VU is
passed to DLARRV because it could be used compute gaps on the right end
of the extremal eigenvalues. However, with not much initial accuracy in
LAMBDA and VU, the formula can lead to an overestimation of the right gap
and thus to inadequately early RQI 'convergence'. This is currently
prevented this by forcing a small right gap. And so it turns out that VU
is currently not used by this implementation of DLARRV.
langou [Sat, 1 Apr 2017 14:39:11 +0000 (16:39 +0200)]
Merge pull request #138 from kbergstr/fixes
Fixed formatting (indentation, spaces, style) in some routines
langou [Sat, 1 Apr 2017 13:41:49 +0000 (15:41 +0200)]
Merge pull request #137 from echeresh/xlarrx_fix
Add quick return for *LARR* routines
eugene.chereshnev [Thu, 30 Mar 2017 23:26:41 +0000 (16:26 -0700)]
Add quick return for *LARR* routines
Kirana Bergstrom [Thu, 30 Mar 2017 23:57:54 +0000 (16:57 -0700)]
Line endings changed from win style to lnx style
Kirana Bergstrom [Wed, 29 Mar 2017 22:25:42 +0000 (15:25 -0700)]
Changed indendation for correct alignment
Kirana Bergstrom [Tue, 28 Mar 2017 23:24:50 +0000 (16:24 -0700)]
took out extra spaces, added workspace calculation condition
kirana.bergstrom [Tue, 28 Mar 2017 22:51:38 +0000 (15:51 -0700)]
took out extra spaces
langou [Mon, 27 Mar 2017 06:13:09 +0000 (08:13 +0200)]
Merge pull request #136 from echeresh/370_fix
A number of fixes for routines and testing sources integrated in LAPACK 3.7.0
eugene.chereshnev [Sat, 25 Mar 2017 20:25:24 +0000 (13:25 -0700)]
Fix external names and remove unused routines from external statements
eugene.chereshnev [Sat, 25 Mar 2017 00:51:27 +0000 (17:51 -0700)]
Remove redundant IF in TESTING/LIN/*chkrfp.f
eugene.chereshnev [Fri, 24 Mar 2017 23:45:06 +0000 (16:45 -0700)]
Fix *chk{sb,hb}2stg.f: corrected name of subroutine in external section
eugene.chereshnev [Fri, 24 Mar 2017 20:56:44 +0000 (13:56 -0700)]
Align TESTING/{EIG,LIN}/chkxer.f
eugene.chereshnev [Fri, 24 Mar 2017 20:56:07 +0000 (13:56 -0700)]
Align TESTING/{EIG,LIN}/*larhs.f
eugene.chereshnev [Fri, 24 Mar 2017 20:46:32 +0000 (13:46 -0700)]
Align TESTING/{LIN,MATGEN}/*lahilb.f
eugene.chereshnev [Fri, 24 Mar 2017 20:32:51 +0000 (13:32 -0700)]
Align TESTING/{EIG,LIN}/*get02.f
eugene.chereshnev [Fri, 24 Mar 2017 20:28:23 +0000 (13:28 -0700)]
Fix *2st_kernels.f: unify doc comments
eugene.chereshnev [Fri, 24 Mar 2017 20:27:37 +0000 (13:27 -0700)]
Fix *lasyf_aa.f: replace N -> M in comments
eugene.chereshnev [Fri, 24 Mar 2017 20:27:10 +0000 (13:27 -0700)]
Fix *drvls.f: duplicate loop to make work query for each of test cases
Workspace size is not monotonic function of input sizes so there should
be loop over all test cases with workspace queries and finding maximum
between them.
Julien Langou [Thu, 23 Mar 2017 19:56:18 +0000 (15:56 -0400)]
Merge branch 'master' of https://github.com/Reference-LAPACK/lapack
Julien Langou [Thu, 23 Mar 2017 19:43:42 +0000 (15:43 -0400)]
This is related to #135
Since the order of multiplication in Fortran is left to right, the expression
MAXITR*N*N*UNFL
first computes MAXITR*N*N as an INTEGER. This causes INTEGER overflow for
N>=18919.
To avoid the problem, rewrite as:
MAXITR*(N*(N*UNFL))
Julien Langou [Thu, 23 Mar 2017 19:40:14 +0000 (15:40 -0400)]
Fix #135
Thanks Cezary Dendek!
julielangou [Sat, 18 Mar 2017 17:22:04 +0000 (10:22 -0700)]
Merge pull request #134 from echeresh/doc_fix
Fixes for mistakes in documentation in ?GETSLS, ?(SY|HE)TRS_AA, ?LAM?(SWLQ|TSQR), ?(GE|TP)M?(LQ|QR)T(|2|3)
eugene.chereshnev [Fri, 17 Mar 2017 19:32:18 +0000 (12:32 -0700)]
Replace **C -> **H in complex routines
eugene.chereshnev [Fri, 17 Mar 2017 19:30:56 +0000 (12:30 -0700)]
*gemlqt.f, *tpmlqt.f: replace **C -> **H, T is MB-by-K, fix names
eugene.chereshnev [Fri, 17 Mar 2017 19:30:08 +0000 (12:30 -0700)]
*geqrt.f: T is NB-by-K
eugene.chereshnev [Fri, 17 Mar 2017 19:29:32 +0000 (12:29 -0700)]
*gelqt.f: replace NB -> MB
eugene.chereshnev [Fri, 17 Mar 2017 19:28:47 +0000 (12:28 -0700)]
*trs_aa.f: a is input only parameter
eugene.chereshnev [Thu, 16 Mar 2017 18:25:21 +0000 (11:25 -0700)]
*tplqt.f, *tplqt2.f: incorrect dimensions
eugene.chereshnev [Thu, 16 Mar 2017 17:38:35 +0000 (10:38 -0700)]
*gemlqt.f: incorrect dimension of V
eugene.chereshnev [Thu, 16 Mar 2017 17:29:05 +0000 (10:29 -0700)]
*gelqt.f, *gelqt3.f: reflectors are stored in rows
eugene.chereshnev [Tue, 14 Mar 2017 02:17:03 +0000 (19:17 -0700)]
*gemlqt.f, *lamswlq.f, *lamtsqr.f: fix mistakes in comments
langou [Tue, 7 Mar 2017 01:31:13 +0000 (02:31 +0100)]
Merge pull request #133 from echeresh/laswp_doc_fix
Fix documentation for ?LASWP routine
eugene.chereshnev [Mon, 6 Mar 2017 23:58:15 +0000 (15:58 -0800)]
Fix documentation for ?LASWP routine
langou [Fri, 3 Mar 2017 14:26:44 +0000 (15:26 +0100)]
Merge pull request #132 from turboencabulator/cleanup
Update makefile prerequisites
Julie [Sun, 26 Feb 2017 22:19:17 +0000 (14:19 -0800)]
Update LAPACK Mailing List
New Mailing List is lapack@icl.utk.edu
langou [Wed, 22 Feb 2017 19:22:36 +0000 (20:22 +0100)]
Merge pull request #131 from martin-frbg/martin-frbg-patch-1
TESTING/EIG: fix spurious EXTERNAL references to nonexistent functions
Martin Kroeker [Wed, 22 Feb 2017 15:12:10 +0000 (16:12 +0100)]
Remove spurious entries from EXTERNAL list
ZHETRD_SY2SB and ZHETRD_SB2ST are never called and do not even seem to exist in the current codebase.
Martin Kroeker [Wed, 22 Feb 2017 15:09:10 +0000 (16:09 +0100)]
Remove spurious entries from EXTERNAL list
ZHETRD_SY2SB and ZHETRD_SB2ST are never called and do not even exist in the current codebase.
Martin Kroeker [Wed, 22 Feb 2017 15:03:19 +0000 (16:03 +0100)]
Fix typo in EXTERNAL
ZHBTRD_HB2ST in the EXTERNAL statement should be ZHETRD_HB2ST (Windows Ifort treated it as an unresolved reference)
langou [Wed, 22 Feb 2017 08:35:27 +0000 (09:35 +0100)]
Merge pull request #130 from martin-frbg/lapack-comma
Fix missing comma on EXTERNALs that span multiple lines
Martin Kroeker [Wed, 22 Feb 2017 08:07:58 +0000 (09:07 +0100)]
Fix missing comma on continued line
EXTERNAL declaration of subroutines missed a comma before the continuation line,
causing a strange run-together name to appear in the object when compiled with ifort.
Martin Kroeker [Wed, 22 Feb 2017 08:06:30 +0000 (09:06 +0100)]
Fix missing comma on continued line
EXTERNAL declaration of subroutines missed a comma before the continuation line,
causing a strange run-together name to appear in the object when compiled with ifort.
Martin Kroeker [Wed, 22 Feb 2017 08:04:33 +0000 (09:04 +0100)]
Fix missing comma on continued line
EXTERNAL declaration of subroutines missed a comma before the continuation line,
causing a strange run-together name to appear in the object when compiled with ifort.
Julien Langou [Tue, 21 Feb 2017 21:52:56 +0000 (22:52 +0100)]
README.md with the appveyor badge pointing to the correct URL
(Thanks @Gjacquenot)
Julien Langou [Tue, 21 Feb 2017 21:44:24 +0000 (22:44 +0100)]
README.md with the codecov badge pointing to the correct URL
(Thanks @Gjacquenot)
langou [Tue, 21 Feb 2017 20:51:33 +0000 (21:51 +0100)]
Merge pull request #129 from Gjacquenot/master
Added Lapack code coverage
Guillaume Jacquenot [Tue, 21 Feb 2017 20:23:33 +0000 (21:23 +0100)]
[coverage] Added coverage badge in README.md
Guillaume Jacquenot [Tue, 21 Feb 2017 20:23:00 +0000 (21:23 +0100)]
[coverage] Updated travis ci for code coverage
Guillaume Jacquenot [Tue, 21 Feb 2017 20:22:25 +0000 (21:22 +0100)]
[coverage] Added CMake rules for code coverage
Guillaume Jacquenot [Tue, 21 Feb 2017 20:21:13 +0000 (21:21 +0100)]
[coverage] Updated cmake coverage files for Lapack
Guillaume Jacquenot [Tue, 21 Feb 2017 20:19:25 +0000 (21:19 +0100)]
[coverage] Added cmake files for coverage
langou [Tue, 21 Feb 2017 18:59:30 +0000 (19:59 +0100)]
Merge pull request #126 from Gjacquenot/master
Added Appveyor CI with MinGW for Windows
Guillaume Jacquenot [Sat, 18 Feb 2017 18:23:58 +0000 (19:23 +0100)]
[appveyor] Added link for appveyor build status
Guillaume Jacquenot [Sat, 18 Feb 2017 17:58:48 +0000 (18:58 +0100)]
[appveyor] Skipped CBLAS-*CBLAT1 tests that fail with appveyor
Guillaume Jacquenot [Sat, 18 Feb 2017 18:24:25 +0000 (19:24 +0100)]
[appveyor] Added appveyor CI with MinGW
langou [Tue, 21 Feb 2017 16:38:29 +0000 (17:38 +0100)]
Merge pull request #128 from vladimir-ch/fix-lapacke-ormbr
LAPACKE: fix wrong matrix size in lapacke_?ormbr
Vladimir Chalupecky [Tue, 21 Feb 2017 05:32:02 +0000 (06:32 +0100)]
LAPACKE: fix wrong matrix size in lapacke_?ormbr
Vladimir Chalupecky [Tue, 21 Feb 2017 05:24:17 +0000 (06:24 +0100)]
LAPACKE: fix wrong matrix size in lapacke_?ormbr_work
... and move declarations under if.
langou [Mon, 20 Feb 2017 09:17:24 +0000 (10:17 +0100)]
Merge pull request #127 from vladimir-ch/fix-lapacke-ormlq
LAPACKE: fix wrong number of columns in ?ormlq
Vladimir Chalupecky [Sun, 19 Feb 2017 00:10:31 +0000 (01:10 +0100)]
LAPACKE: fix wrong number of columns in ?ormlq
Julien Langou [Thu, 16 Feb 2017 22:40:20 +0000 (23:40 +0100)]
Fix #125
Julien Langou [Thu, 16 Feb 2017 21:38:38 +0000 (22:38 +0100)]
Fix #124
Julien Langou [Thu, 9 Feb 2017 14:03:38 +0000 (15:03 +0100)]
Fix #115
Kyle Guinn [Mon, 6 Feb 2017 07:07:10 +0000 (01:07 -0600)]
Simplify the clean targets
cleanobj: Remove object files
cleanlib: Remove libraries
cleanexe: Remove test and example executables
cleantest: Remove test output and core dumps
clean: All of the above
Kyle Guinn [Sun, 5 Feb 2017 09:09:06 +0000 (03:09 -0600)]
Use $(MAKE) -C for recursion
Kyle Guinn [Sun, 5 Feb 2017 08:54:37 +0000 (02:54 -0600)]
Fix missing or unnecessary prerequisites
Kyle Guinn [Sun, 5 Feb 2017 06:41:46 +0000 (00:41 -0600)]
Use automatic variables for test inputs
Kyle Guinn [Sun, 5 Feb 2017 05:13:34 +0000 (23:13 -0600)]
Remove VARIANTSDIR so we don't have to use mkdir
Make the target an actual filename to avoid rebuilding the variant
libraries.
Kyle Guinn [Sun, 5 Feb 2017 04:47:19 +0000 (22:47 -0600)]
Add libraries as prerequisites
Use the automatic variable $^ to refer to all prerequisites when
linking or creating an archive.
Kyle Guinn [Sun, 5 Feb 2017 03:38:42 +0000 (21:38 -0600)]
Update comments
julielangou [Sun, 5 Feb 2017 02:04:14 +0000 (18:04 -0800)]
Merge pull request #120 from echeresh/lapacke_bdb_csd
lapacke_*(bb|or|un)(csd|bdb): forward calls to LAPACK without conversion
langou [Sat, 4 Feb 2017 09:04:29 +0000 (10:04 +0100)]
Merge pull request #119 from turboencabulator/cleanup
Linking fixes
langou [Sat, 4 Feb 2017 09:03:30 +0000 (10:03 +0100)]
Merge pull request #118 from echeresh/lapacke_fixes
Fixes for LAPACKE
Kyle Guinn [Sat, 4 Feb 2017 03:05:09 +0000 (21:05 -0600)]
Strip out comments that don't apply
eugene.chereshnev [Fri, 3 Feb 2017 21:50:11 +0000 (13:50 -0800)]
lapacke_zgejsv: align parens with lapacke_cgejsv
eugene.chereshnev [Wed, 1 Feb 2017 02:44:21 +0000 (18:44 -0800)]
lapacke_*lacp2_work: remove unnecessary include
eugene.chereshnev [Fri, 3 Feb 2017 21:49:18 +0000 (13:49 -0800)]
Remove tabs and trailing spaces (git diff -w prints nothing)
eugene.chereshnev [Wed, 1 Feb 2017 20:07:06 +0000 (12:07 -0800)]
lapacke_*tp_trans: condition should be inverted
The function converts <in> from <matrix_layout> to opposite layout.
E.g. for upper case (all indices are 0-based):
col-major, upper: a(i,j) is stored in ap[(1 + j)*j/2 + i]
row-major, upper: a(i,j) is stored in ap[(n + n-i+1)*i/2 + j-i]
eugene.chereshnev [Wed, 1 Feb 2017 02:46:44 +0000 (18:46 -0800)]
lapacke_*stemr_work: fixed condition to check ldz: jobz must be checked
eugene.chereshnev [Wed, 1 Feb 2017 02:44:47 +0000 (18:44 -0800)]
lapacke_*(sy|he)(evr|evx)_work: fix expression for # of columns in z
eugene.chereshnev [Wed, 1 Feb 2017 02:42:25 +0000 (18:42 -0800)]
lapacke_*ormlq_work: move declarations under if
eugene.chereshnev [Wed, 1 Feb 2017 02:40:37 +0000 (18:40 -0800)]
lapacke_*bdsvdx: corrected # of columns used for allocation of z_t
eugene.chereshnev [Wed, 1 Feb 2017 02:38:45 +0000 (18:38 -0800)]
lapacke_*gesdd: missing MAX. Should be lrwork = MAX(1, ...)
eugene.chereshnev [Wed, 1 Feb 2017 02:36:39 +0000 (18:36 -0800)]
lapacke_*ge(lq|qr|mlq): add functions to make files
eugene.chereshnev [Wed, 1 Feb 2017 02:35:53 +0000 (18:35 -0800)]
lapacke_*gelq and lapacke_*gemlq: names of functions are incorrect
eugene.chereshnev [Wed, 1 Feb 2017 02:08:43 +0000 (18:08 -0800)]
lapacke_*laswp_work: incorrect value for lda_t (issue #110)
Kyle Guinn [Sat, 4 Feb 2017 02:44:52 +0000 (20:44 -0600)]
Version the CBLAS and LAPACKE libraries
eugene.chereshnev [Wed, 1 Feb 2017 02:10:08 +0000 (18:10 -0800)]
lapacke_*larfb: char vars should be compared by LAPACKE_lsame
eugene.chereshnev [Wed, 1 Feb 2017 00:44:06 +0000 (16:44 -0800)]
lapacke_*(bb|or|un)(csd|bdb): forward calls to LAPACK without conversion
1) Ignore TRANS parameter for LAPACKE since it has the same meaning
as matrix_layout parameter.
TRANS = 'T' means matrices are handled in row-major format.
TRANS != 'T' means matrices are handled in col-major format.
2) So conversion from/to row-major layout can be removed in LAPACKE.
All the cases can be forwarded to LAPACK calls
with corresponding TRANS parameter.
3) nrows_* variables can be safely removed. NaN checkers for
different TRANS values can be called with corresponding layout.
LAPACKE calls are forwarded in the following way:
trans != 'T', col-major: call LAPACK(trans = 'N') - col-major
trans != 'T', row-major: call LAPACK(trans = 'T') - row-major
trans = 'T', col-major: call LAPACK(trans = 'T') - row-major
trans = 'T', row-major: call LAPACK(trans = 'T') - row-major