diff --git a/Changelog.txt b/Changelog.txt index ee7701de1d..ca9a45e3d3 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,5 +1,99 @@ OpenBLAS ChangeLog ==================================================================== +Version 0.3.34 +9-Jul-2026 + +general: + - Fixed potential race conditions between concurrent calls to level3 BLAS + functions (inadvertent use of non-unified locks) + - Fixed potential race condition in GETRF + - Added or improved multithreading thresholds in SPR,SPR2,SYR,SYR2,TBMV,TPMV + - Added multithreading thresholds to GETRS, LAED3, LASWP, LAUUM, TRTRS, ZTRTRI + - Guarded against spurious NaN values in the reimplemented ?LAED3 + - Fixed spurious and conflicting setting of job numbers in gmake builds + - Fixed a potential linking issue with the fortran runtime in the BLAS tests + - Fixed potential access to unrelated memory in the C fallback versions of LAPACK + functions ILAENV and IPARMQ + - Fixed the generated pkgfile to support spaces in path names + - Added support for compilation with the experimental, LLVM-based memory-safe C toolchain + known as Fil-C + - Imported recent updates from Reference-LAPACK to realign with its upcoming 3.13.0 release: + - Added non-trivial terminating case to ?LARFT calculation (Reference-LAPACK PR 1163) + - Fixed workspace calculation for CUNMLQ with K=0 (Reference-LAPACK PR 1225) + - Fixed wrong Y increment used in ?ORDB3/?UNBDB3 (Reference-LAPACK PR 1265) + - Fixed wrong name reported in XERBLA call of ZLA_SYRFSX_EXTENDED (PR 1268) + - Fixed wrong JOBA type in SGESVJ call of SGEJSV (Reference-LAPACK PR 1269) + - Fixed wrong workspace in DGEJSV corrupting memory in DGESVJ (PR 1270) + - Fixed wrong or missing EXTERNAL declarations (Reference-LAPACK PR 1271) + - Fixed wrong operand number in errors of GGSVD3,UN/ORBDB4,UN/ORCSD (PR 1272) + - Fixed sign of error flag in LWORK check of LAQZ0 (Reference-LAPACK PR 1273) + - Fixed too small workspace query result from SGGEV3 (Reference-LAPACK PR 1274) + - Fixed DLASWLQ not rejecting NB=0 (Reference-LAPACK PR 1275) + - Avoid immediate overflows in GEJSV,GESVJ,GESVDX,GEDMD (Reference-LAPACK PR 1283) + - Ignore LDU value when U unused in LAPACKE_?GESVD_WORK (Reference-LAPACK PR 1284) + - Fixed premature return before fallback code in BDSQR (Reference-LAPACK PR 1285) + - Increased tolerance in LASD2 to improve BDSDC stability (Reference-LAPACK PR 1286) + - Fixed row-major A dimension for SIDE=R in LAPACKE_?TPRFB_WORK (PR 1287) + - Avoid immediate overflows in ?LARFGP (Reference-LAPACK PR 1290) + - Added handling of degenerate cases in OR/UNCSD2BY1 (Reference-LAPACK PR 1291) + - Fixed workspace for tiny inputs in ORM/UNM-L/R-Q and -Q-L/R (PR 1292) + - Scaled convergence thresholds in ?BBCSD to improve accuracy (PR 1293) + - Fixed integer overflow in the LAPACKE nancheck helpers (Reference-LAPACK PR 1294) + - Relaxed eigenvalue consistency checks in testsuite (Reference-LAPACK PR 1297) + - Switched to QR algorithm in ?BDSDC for bidiagonal SVD with vectors (PR 1300) + - Corrected description of QMAX parameter in ?LASQ3 (Reference-LAPACK PR 1307) + - Fixed bad scaling in ?LARFF that slowed down DSYEVR/ZHEEVR (PR 1309) + - Fixed handling of negative increments in ?LARF/?LARF1F/?LARF1L (PR 1315) + - Increased tolerances in ?LAED to match changes in ?LASD (PR 1317) + - Fixed LAPACKE_?lacpy_work destroying data in row-major mode (PR 1318) + +arm: + - Added a significantly faster SGEMM kernel + +arm64: + - Added optimized kernels for OMATCOPY_CT and OMATCOPY_RT on all targets + - Fixed miscompilation of CGETF2/ZGETF2 by LLVM on Apple M + - Fixed SSYRK miscalculation on Apple M systems bigger than the Mac mini + - Fixed remaining cases of CMake build failure due to long argument lists on OSX + - On OSX, reduced the list of DYNAMIC_ARCH targets to those relevant for this os + - Fixed platform detection and cross-builds to iOS on OSX with AppleClang + - Fixed gmake builds for SME targets on OSX with AppleClang + - Improved the compiler test for SME compatibility in the CMake build files + - Fixed runtime detection of SME in DYNAMIC_ARCH builds made with CMake + - Restored a fix for building DYNAMIC_ARCH under Windows on Arm that was inadvertently + dropped in 0.3.33) + - Corrected the selection criteria for the SME-based SGEMM kernel on Apple M + - Fixed DYNAMIC_ARCH builds on hosts without SVE capability + - Fixed building a shared library with NAG Fortran on OSX + - Fixed misdetection of C11 capability (and resulting race conditions during concurrent + calls) in Clang builds under OSX + - Fixed miscalculation of Apple M cpu time leading to benchmarks 40 times too slow + +loongarch64: + - Corrected generation of the LSX/LASX status flags in the configuration files + - Added optimized SDOT, ICAMIN/IZAMIN and ZGEMM kernels for 2K3000 + +power: + - Fixed an incompatibility in the assembly kernels for SCAL on FreeBSD + - Fixed a potentially spurious check for gfortran in gmake builds with LLVM + that could make POWER9/10 builds fall back to POWER8 kernels + - Improved build flags and cpu register constraints for POWER10 + - Fixed linking issues on BSD + +riscv64: + - Fixed compilation for DYNAMIC_ARCH with BUILD_BFLOAT16 defined + - Fixed SGEMM and DGEMM errors on ZVL256 introduced in 0.3.33 + - Sped up GEMV on C910V and ZVL256B targets + - Improved the x280 S/DROTM kernel and enabled it on ZVL128B/ZVL256B + - Added optimized STRSM kernels for ZVL128B/ZVL256B + - Added optimized D/C/ZTRSM kernels (RN and RT cases) for ZVL128B/ZVL256B + +x86_64: + - Fixed remaining cases of CMake build failure due to long argument lists on OSX + - Improved cpu capability check for recent Zhaoxin cpus + - Fixed wrong TRSM results on AMD Barcelona (and Ryzen systems in 32bit builds) + - Added autodetection support for the fake Opteron-like CPUID used by QEMU on AMD hardware +==================================================================== Version 0.3.33 23-Apr-2026