Up to [cvs.NetBSD.org] / pkgsrc / math / lapack
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
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: lapack-3.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 Rayleigh-Ritz 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 Operator-Based Forecasting for Nonstationary Processes from Near-Term, Limited Observational Data", Contract No: W31P4Q-21-C-0007; (2) DARPA PAI project "Physics-Informed Machine Learning Methodologies", Contract No: HR0011-18-9-0033; (3) DARPA MoDyL project "A Data-Driven, Operator-Theoretic Framework for Space-Time Analysis of Process Dynamics", Contract No: HR0011-16-C-0116. 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 @martin-frbg 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 M-by-N 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 2-norm of the residual matrix R22(K); (3) The input parameter RELTOL, the tolerance for the maximum column 2-norm matrix of the residual matrix R22(K) divided by the maximum column 2-norm 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 n-element 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 64-bit API Fix CBLAS tests with 64-bit indexing by @svillemot in PR 767 Add Index-64 API as extended API with _64 suffix for CBLAS by @mkrainiuk in PR 846 Revert "Add Index-64 API as extended API with _64 suffix for CBLAS" by @langou in PR 856 Add Index-64 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 (c|z)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 @martin-frbg 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 zero-sized 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 @aravindh-krishnamoorthy in PR 867 fix nrhs=0 case in ?gelss by @eaberendeev in PR 876 Fix computation of uplo in LAPACKE_xlarfb by @vladimir-ch 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 @christoph-conrads 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
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 level-3 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 level-3 BLAS version computes the scaling factors based on the upper bounds of blocks to enable level-3 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 level-3 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 @martin-frbg 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 out-of-bounds 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 row-major 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 left-looking variant of GEQRF by @weslleyspereira in PR 690. Fix workspace query for *SYEVD and *HEEVD routines by neil-lindquist@neil-lindquist 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.
lapack and friends: update to 3.10.1 This is a minor release addressing multiple bug fixes and improvements.
lapack: update lapack*, cblas*, and blas* to 3.10.0 This is a major release and also addressing multiple bug fixes.
math/lapack, blas, cblas, lapacke: update to version 3.9.1 This includes a rework of the build system patches, which I'll try to push upstream …
math/blas, math/lapack: Install interchangeable BLAS system Install the new interchangeable BLAS system created by Thomas Orgis, currently supporting Netlib BLAS/LAPACK, OpenBLAS, cblas, lapacke, and Apple's Accelerate.framework. This system allows the user to select any BLAS implementation without modifying packages or using package options, by setting PKGSRC_BLAS_TYPES in mk.conf. See mk/blas.buildlink3.mk for details. This commit should not alter behavior of existing packages as the system defaults to Netlib BLAS/LAPACK, which until now has been the only supported implementation. Details: Add new mk/blas.buildlink3.mk for inclusion in dependent packages Install compatible Netlib math/blas and math/lapack packages Update math/blas and math/lapack MAINTAINER approved by adam@ OpenBLAS, cblas, and lapacke will follow in separate commits Update direct dependents to use mk/blas.buildlink3.mk Perform recursive revbump