Path to this page:
./
math/lapack,
Linear Algebra PACKage (Netlib reference implementation)
Branch: CURRENT,
Version: 3.12.0,
Package name: lapack3.12.0,
Maintainer: thomas.orgisThe BLAS (Basic Linear Algebra Subprograms) are high quality "building
block" routines for performing basic vector and matrix
operations. Level 1 BLAS do vectorvector operations, Level 2 BLAS do
matrixvector operations, and Level 3 BLAS do matrixmatrix
operations. Because the BLAS are efficient, portable, and widely
available, they're commonly used in the development of high quality
linear algebra software, LINPACK and LAPACK for example.
LAPACK is a highly portable Fortran 77 library which provides routines
for solving systems of simultaneous linear equations, leastsquares
solutions of linear systems of equations, eigenvalue problems, and
singular value problems. The associated matrix factorizations (LU,
Cholesky, QR, SVD, Schur, generalized Schur) are also provided, as are
related computations such as reordering of the Schur factorizations
and estimating condition numbers. Dense and banded matrices are
handled, but not general sparse matrices. In all areas, similar
functionality is provided for real and complex matrices, in both
single and double precision.
This package contains the Fortran 77 reference implementation of BLAS
and LAPACK from Netlib. The C wrappers CBLAS and LAPACKE are provided
in separate packages.
Required to run:[
lang/g95] [
math/blas]
Required to build:[
pkgtools/cwrappers]
Master sites:
Filesize: 7747.663 KB
Version history: (Expand)
 (20240109) Updated to version: lapack3.12.0
 (20230104) Updated to version: lapack3.11.0
 (20220421) Updated to version: lapack3.10.1
 (20211124) Updated to version: lapack3.10.0
 (20210610) Updated to version: lapack3.9.1nb1
 (20210512) Updated to version: lapack3.9.1
CVS history: (Expand)
20240109 04:32:48 by Ryo ONODERA  Files touched by this commit (2) 
Log message:
cblas: Fix build with gfortran from lang/gcc10
* Use Fortran compiler as linker to link with sane RPATH.

20240108 22:28:57 by Dr. Thomas Orgis  Files touched by this commit (26)  
Log message:
math/{lapack*,cblas*}: update netlib BLAS to 3.12.0
This drops the static libraries along with the custom patches for those. Also,
the hack of linking CBLAS as Fortran library as opposed to C is gone. If this
breaks some NetBSD install, it should be investigated and fixed properly.
The only patch now is one unified one I already submitted for inclusion
upstream. Maybe soon we can drop any patches. Yay!
Here is a list of upstream changes:
LAPACK 3.12.0: What’s new
Download: lapack3.12.0.tar.gz
This is a major release and also addressing multiple bug fixes.
Dynamic Mode Decomposition (DMD)
xGEDMD computes the Dynamic Mode Decomposition (DMD) for a pair of
data snapshot matrices. For the input matrices X and Y such that Y =
A*X with an inaccessible matrix A, xGEDMD computes a certain number
of Ritz pairs of A using the standard RayleighRitz extraction from
a subspace of range(X) that is determined using the leading left
singular vectors of X. Optionally, xGEDMD returns the residuals of
the computed Ritz pairs, the information needed for a refinement of
the Ritz vectors, or the eigenvectors of the Exact DMD.
xGEDMDQ does the same as xGEDMD but uses a QR factorization based
compression of the data.
See: Z. Drmac: A LAPACK implementation of the Dynamic Mode
Decomposition I. Technical report. AIMDyn Inc. and LAPACK Working
Note 298.
Developed and coded by Zlatko Drmac, Faculty of Science, University
of Zagreb. In cooperation with AIMdyn Inc., Santa Barbara, CA. And
supported by (1) DARPA SBIR project "Koopman OperatorBased
Forecasting for Nonstationary Processes from NearTerm, Limited
Observational Data", Contract No: W31P4Q21C0007; (2) DARPA PAI
project "PhysicsInformed Machine Learning Methodologies", Contract
No: HR00111890033; (3) DARPA MoDyL project "A DataDriven,
OperatorTheoretic Framework for SpaceTime Analysis of Process
Dynamics", Contract No: HR001116C0116. Any opinions, findings and
conclusions or recommendations expressed in this material are those of
the author and do not necessarily reflect the views of the DARPA SBIR
Program Office. Distribution Statement A: Approved for Public Release,
Distribution Unlimited. Cleared by DARPA on September 29, 2022
Adding Dynamic Mode Decomposition (DMD) into LAPACK by @dbielich in
PR 736
Update C prototypes and LAPACKE interfaces for ?GEDMD/?GEDMDQ by
@martinfrbg in PR 880
Truncated QR with Column Pivoting
The routine computes a truncated (rank K) or full rank Householder
QR factorization with column pivoting of a real MbyN matrix A
using Level 3 BLAS.
The truncation criteria (i.e. when to stop the factorization) can
be any of the following: (1) The input parameter KMAX, the maximum
number of columns KMAX to factorize; (2) The input parameter ABSTOL,
the absolute tolerance for the maximum column 2norm of the residual
matrix R22(K); (3) The input parameter RELTOL, the tolerance for the
maximum column 2norm matrix of the residual matrix R22(K) divided by
the maximum column 2norm of the original matrix A, which is equal
to abs(R(1,1)). The algorithm stops when any of these conditions is
first satisfied, otherwise the whole matrix A is factorized.
Truncated QR with Column Pivoting by @scr2016 in PR 891
Reciprocal Scaling of complex vectors
[C/Z]RSCL multiplies an nelement complex vector x by the complex
scalar 1/a. This is done without overflow or underflow as long as
the final result x/a does not overflow or underflow.
See: "An algorithm for scaling vectors by the reciprocal
of a complex number", Weslley da Silva Pereira,
[arXiv:2311.05736](https://arxiv.org/abs/2311.05736)
Adds CRSCL by @weslleyspereira in PR 839
Improvements in the 64bit API
Fix CBLAS tests with 64bit indexing by @svillemot in PR 767
Add Index64 API as extended API with _64 suffix for CBLAS by
@mkrainiuk in PR 846
Revert "Add Index64 API as extended API with _64 suffix for CBLAS"
by @langou in PR 856
Add Index64 API as extended API with _64 suffix for CBLAS by
@mkrainiuk in PR 867
Create DOCS/CBLAS.md by @mkrainiuk in PR 863
Reduce number of macros in fortran compilation line for BLAS _64
API by @mkrainiuk in PR 861
Bug fixes and other changes
Windows build fix by @ACSimon33 in PR 760
Added option to enable flat namespace on macOS by @ACSimon33 in PR 762
Fix bug in new test case for LAPACK 3.11 SLATRS3 by @dklyuchinskiy
in PR 755
Check for NaNs in *GECON by @weslleyspereira in PR 765
Fixed bug in array bounds in complex syl01 test by @dklyuchinskiyin
PR 758
Fix uninitialized M when quick return in DLARRD and SLARRD by
@akobotov in PR 769
In LAPACKE tgsen, allocate iwork when ijob = 0. Fixes #772. by
@mgates3 in PR 773
Fix SLATRS3 and CLATRS3 tests by @bartoldeman in PR 764
Fix uninitialized out variables in LARR functions by @echeresh in
PR 775
Warnings supression in some LAPACKE functions by @jgpallero in PR 780
Revert "Warnings supression in some LAPACKE functions" by @langou
in PR 781
Warnings supression and deletion of unnecessary check in some LAPACKE
xLARFB functions by @jgpallero in PR 782
remove redundant space from xerbla call sbgv/hbgv by @dklyuchinskiy
in PR 792
don’t subtract N_DEFLATED from istop twice by @thijssteel in PR 794
fix rfp test for DIAG = U by @dklyuchinskiy in PR 796
fix bug in complex precision tests (cz)het21 by @EduardFedorenkov
in PR 798
CMake: Disable TEST_FORTRAN_COMPILER by @jschueller in PR 761
Fix typos in documentation by @angsch in PR 750
Add minimum permissions to workflows by @gabibguti in PR 804
Add numerical tests for trevc3 by @angsch in PR 682
Remove legacy function LABAD by @angsch in PR 805
Refactor xGEBAL by @eprovst in PR 808
Fix typos and errors in comments by @jip in PR 809
cmake: allow setting a prefix for the library names by @joseeroman
in PR 810
Fix typos in comments by @jip in PR 811
fix #813 by @langou in PR 814
Replace the (partially defined) constant index variable INDIBL in
?SBGVX and related by @martinfrbg in PR 807
CTGEVC, ZTGEVC: fix typo in description of VR argument by @svillemot
in PR 812
Add Security Policy by @gabibguti in PR 819
typos by @musvaage in PR 820
extend tests for error exit sysv sytd2 gehd2 by @dklyuchinskiy in
PR 795
CMake: avoid "make" in blas++ and lapack++ by @nim65s in PR 821
appveyor: output test failures by @nim65s in PR 822
Reference actions by commit SHA by @gabibguti in PR 829
LAPACKE interfaces for [cz]unhr_col and [sd]orhr_col by @sknepper
in PR 827
fix segfault problem when executing LAPACKE_*geqrt on row major #766
by @sbite0138 in PR 768
Adds comment related to zerosized matrix B in GELSY by
@weslleyspereira in PR 833
update brief descriptions of function purpose, Closes #230 by
@weslleyspereira in PR 831
Fix scaling in (S/D)TGSNA, fix #103, thanks to @elivanova by
@weslleyspereira in PR 830
Exits xLARUV when N < 1 by @weslleyspereira in PR 837
Create GitHub action to test CMake build system on Windows by
@weslleyspereira in PR 524
Fix bug in lapacke_[s,d]geesx by @weslleyspereira in PR 836
Removes unused SMIN from bdsqr by @weslleyspereira in PR 832
Use a better (more informative) message when we say the compiler
intr… by @weslleyspereira in PR 845
Improve variants of Cholesky and QR by @angsch in PR 847
fixes #848 by @jaganmn in PR 849
Attempt to fix Appveyor on Windows by @angsch in PR 854
fix dlasd0 / slasd0 documentation issue by @mtowara in PR 855
Remove legacy warning for non IEEE 754 compliant machines by @angsch
in PR 852
Add verbose build to CI by @mkrainiuk in PR 858
[cz]hetrd_hb2st.F, [sd]sytrd_sb2st.F OpenMP fixes by @chrwarm in
PR 860
new doxygen group structure by @mgates3 in PR 802
Correct the order of returned eigenvalue and eigenvectors for 2x2
matrices with IL=IU in C/D/S/Z/STEMR by @aravindhkrishnamoorthy in
PR 867
fix nrhs=0 case in ?gelss by @eaberendeev in PR 876
Fix computation of uplo in LAPACKE_xlarfb by @vladimirch in PR 878
Fix workspace query corner cases by @angsch in PR 883
Fix actual arguments in some procedure calls by @mjacobse in PR 885
Improve Cholesky variants by @angsch in PR 889
Removes usage of Experimental (interactive) mode in ctest by
@weslleyspereira in PR 892
Updates the documentation of xGEMV and xGBMV related to when M=0
and N=0 by @weslleyspereira in PR 843
Add Scorecard by @gabibguti in PR 895
Remove auxiliary GEQRS, GELQS by @angsch in PR 900
CMake config for IntelLLVM (ifx) and NVIDIA HPC SDK (nvfortran)
by @ACSimon33 in PR 898
Fix build for CMake >= 3.27 by @scivision in PR 910
allow absolute GNU install dirs by @chayleaf in PR 893
dtgex2: add 2 to iwork length to prevent OOB interaction in Dtgsy2
by @soypat in PR 907
Adds OpenSSF Scorecard badge by @weslleyspereira in PR 896
Fix issue #908 related to accumulation in xLASSQ by @weslleyspereira
in PR 909
Apply ROUNDUP_LWORK function in lapack by @kleineLi in PR 904
Compilation of LAPACKE possibly independent from Fortran by
@weslleyspereira in PR 834
Always use C as linker language for CBLAS by @weslleyspereira in
PR 920
Uses Valgrind for ExperimentalMemCheck in ctest by @weslleyspereira
in PR 844
Adding in quotes in cmake for Intel ifx and linux build by @colleeneb
in PR 922
Fix complex BDSQR maxit by @pleshkovvli in PR 927
xORBDB6/xUNBDB6: fix a constant by @christophconrads in PR 928
Fixed Fortran preprocessor flag for NAG Fortran compiler by @ACSimon33
in PR 939
Fixed void main() for AppleClang by @ACSimon33 in PR 940

20230803 14:08:33 by Tobias Nygren  Files touched by this commit (1) 
Log message:
lapack: revert previous, fixed in compiler/gcc.mk v1.1260

20230803 00:19:22 by Tobias Nygren  Files touched by this commit (1) 
Log message:
lapack: add fPIC to FFLAGS
Since we patch the build to install both static and dynamic shlibs,
we must ensure position independent code is used.
Fixes unresolvable R_AARCH64_ADR_PREL_PG_HI21 relocation against
symbol `__stack_chk_guard'

20230124 19:36:36 by Thomas Klausner  Files touched by this commit (103) 
Log message:
*: convert to cmake/build.mk

20230104 19:31:36 by Thomas Klausner  Files touched by this commit (2)  
Log message:
lapack & friends: update to 3.11.0
3.11.0
This is a major release and also addressing multiple bug fixes.
2.1. Normwise criterion for infinite eigenvalues in the QZ algorithm
by @thijssteel
The normwise criterion is more robust at detecting infinite
eigenvalues than the elementwise criterion (PR #698). See also
https://arxiv.org/abs/2208.02057.
2.2 level3 BLAS solvers for the triangular system and triangular
Sylvester equations by @angsch
The triangular Sylvester equation has been recognized to be prone
to overflow. For that purpose, *TRSYL utilizes a scaling factor to
represent the solution as (s^{1} X) and solve the scaled equation
AX + XB = s C. Due to the scaling factor, there is some flexibility
in the representation of the solution. The proposed level3 BLAS
version computes the scaling factors based on the upper bounds of
blocks to enable level3 BLAS. The scaling is typically slightly
more aggressive so that an alternatively scaled final solution is
computed. This is no problem as long as the scaling factor does
not get flushed to zero (PR #651). The same upper bound calculation
was used to write the level3 BLAS solver for the triangular system,
*LATRS3.
2.3 Givens rotations generated with less accumulation error by
@weslleyspereira
New algorithms for computing Givens rotations in complex arithmetic
that reduce the accumulation errors for computing each of the
outputs, c, s, r. The new algorithms are, on average, more accurate
than both the algorithms from LAPACK 3.9.1 and LAPACK 3.10.0 (PR
#631). See also https://arxiv.org/abs/2211.04010.
2.4 Faster algorithms for Least Squares by @scr2016
The new algorithms, *GELST, are similar to *GELS. *GELST avoids
computing triangular blocks twice as in *GELS, which means *GELST
runs faster (PR #739).
2.5 Improvements on the building system and the Continuous Testing
framework
Regression test for illegal modification of Y in *GEMV by
@matcross in PR #622.
Test the Fortran intrinsic ABS and complex divisions and report
failures during build by @weslleyspereira in PR #623.
Appveyor is working in the Continuous Testing once more by
@martinfrbg in PR #627.
More tests and fixes for type mismatches by @angsch in PR #675.
Solve build issues with IBM XLF by @friedc in PR #677.
Explicit type casts to INT by @angsch in PR #684.
Fix an outofbounds write in the tests by @angsch in PR #685.
Adding support for NAG Fortran compiler (nagfor) by @ACSimon33
in PR #686.
Fix time check flag propagation and default value by @ACSimon33
in PR #696.
Fixed format warnings in 64 bit integer builds by @ACSimon33
in PR #700.
Explicit type casts and more rigorous CI by @weslleyspereira
in PR #703.
Fix type mismatches in function calls of testing code by
@mjacobse in PR #706.
Fix lower triangular band matrix generation by @angsch in PR
#728.
2.6 Other improvements
Improves the computation of norms in {S,D}ORBDB6 and {C,Z}UNBDB6
by @Christoph Conrads in PR #647.
Uses a Newton step to compute the initial guess for ETA in
{S,D}LAED4 to reduce the number of iterations by @weslleyspereira
in PR #655.
Return immediately when scaling with one by @angsch in PR #674.
Rearrange the application of the Householder reflectors in
*LAQR5, which lowers the instruction count when FMA is available
by @angsch in PR #681.
Set SCALE early for robust triangular solvers by @angsch in PR
#712.
Add {C,Z}ROTG, {CS,ZD}ROT, {S,D}CABS1 to CBLAS by @angsch in
PR #721.
Add *LANGB to LAPACKE by @ACSimon33 in PR #725.
NaN check for trapezoidal matrices on LAPACKE by @ACSimon33 in
PR #738 and PR #742.
2.7 Bug fixes
Fix LAPACKE_*tpmqrt_work for rowmajor matrices by @weslleyspereira
in PR 540.
Fix leading dimension check in LAPACKE’s *geesv[x] and *gges[x]
by @angsch in PR 665.
Fix the leftlooking variant of GEQRF by @weslleyspereira in
PR 690.
Fix workspace query for *SYEVD and *HEEVD routines by
neillindquist@neillindquist in PR 691.
Fix behavior of SCALE in *LATBS and *LATRS, and avoids NaN
generation if entries in CNORM exceed the overflow threshold
by @angsch in PR 712.

20220421 12:30:23 by Thomas Klausner  Files touched by this commit (2)  
Log message:
lapack and friends: update to 3.10.1
This is a minor release addressing multiple bug fixes and improvements.

20220313 08:31:57 by Niclas Rosenvik  Files touched by this commit (2) 
Log message:
Fix lapack parallel build when building both static and shared libs
lapack creates .mod files that are created in the same location
when the static and shared libraries these then interfere with each
other. put the .mod files created when buildling the static library
in a different directory to fix this.
