Feature update for openblas
| Announcement ID: | SUSE-FU-2024:1075-1 |
|---|---|
| Rating: | important |
| References: | |
| Affected Products: |
|
An update that contains two features and has one fix can now be installed.
Description:
This update for openblas fixes the following issues:
openblas was updated from version 0.3.21 to version 0.3.25 (jsc#PED-7926, jsc#PED-7927, bsc#1221813):
-
Changes in version 0.3.25:
-
General:
- Improved the error message shown on exceeding the maximum thread count
- Improved the code to add supplementary thread buffers in case of overflow
- Fixed a potential division by zero in
?ROTG - Improved the
?MATCOPYfunctions to accept zero-sized rows or columns - Corrected empty prototypes in function declarations
- cleaned up unused declarations in the f2c-converted versions of the LAPACK sources
- Improved link line rewriting to avoid mixed libgomp/libomp builds with clang&gfortran
- imported the following changes from the upcoming release 3.12 of Reference-LAPACK: LAPACK PR 900, LAPACK PR 904, LAPACK PR 907, LAPACK PR 909, LAPACK PR 926, LAPACK PR 927, LAPACK PR 928 & 930
-
Architecture x86-64:
- Fixed capability-based fallback selection for unknown cpus
in
DYNAMIC_ARCH - Added AVX512 optimizations for
?ASUMon Intel Sapphire Rapids and Cooper Lake
- Fixed capability-based fallback selection for unknown cpus
in
-
Architecture ARM64:
- Fixed building with XCODE 15
- Fixed building on A64FX and Cortex A710/X1/X2
- increased the default buffer size for recent arm server cpus
-
Architecture POWER PC:
- Added support for
DYNAMIC_ARCHbuilds with clang - Fixed union declaration in the
BFLOAT16test case
- Added support for
-
Changes in version 0.3.24:
-
General:
- Declared the arguments of
cblas_xerblaasconst(in accordance with the reference implementation and others, the previous discrepancy appears to have dated back to GotoBLAS) - Fixed the implementation of
?GEMMTthat was added in 0.3.23 - made cpu-specific
SWITCH_RATIOparameters for GEMM available toDYNAMIC_ARCHbuilds - Fixed missing
SSYCONVFfunction in the shared library - Fixed parallel build logic used with gmake
- Fixed several issues with the handling of runtime limits on the number of OPENMP threads
- Corrected the error code returned by
SGEADD/DGEADDwhen LDA is too small - Corrected the error code returned by
IMATCOPYwhen LDB is too small - Updated
?NRM2to support negative increment values (as introduced in release 3.10.0 of the Reference BLAS) - Updated
?ROTGto use the safe scaling algorithm introduced in release 3.10.0 of the Reference BLAS - Fixed OpenMP builds with CLANG for the case where libomp is not in a standard location
- Fixed a potential overwrite of unrelated memory during thread initialisation on startup
- Fixed a potential integer overflow in the multithreading
threshold for
?SYMM/?SYRK - Fixed build of the LAPACKE interfaces for the LAPACK 3.11.0
?TRSYLfunctions added in 0.3.22 - Applied additions and corrections from the development branch of Reference-LAPACK:
- Fixed actual arguments passed to a number of LAPACK functions (from Reference-LAPACK PR 885)
- Fixed workspace query results in LAPACK
?SYTRF/?TRECV3(from Reference-LAPACK PR 883) - Fixed derivation of the UPLO parameter in
LAPACKE_?larfb(from Reference-LAPACK PR 878) - Fixed a crash in LAPACK
?GELSDDonNRHS=0(from Reference-LAPACK PR 876) - Added new LAPACK utility functions
CRSCLandZRSCL(from Reference-LAPACK PR 839) - Corrected the order of eigenvalues for 2x2 matrices in
?STEMR(Reference-LAPACK PR 867) - Removed spurious reference to OpenMP variables outside OpenMP contexts (Reference-LAPACK PR 860)
- Updated file comments on use of
LAMBDAvariable in LAPACK (Reference-LAPACK PR 852) - Fixed documentation of LAPACK
SLASD0/DLASD0(Reference-LAPACK PR 855) - Fixed confusing use of "minor" in LAPACK documentation (Reference-LAPACK PR 849)
- Added new LAPACK functions ?GEDMD for dynamic mode decomposition (Reference-LAPACK PR 736)
- Fixed potential stack overflows in the
EIGpart of the LAPACK testsuite (Reference-LAPACK PR 854) - Applied small improvements to the variants of Cholesky and QR functions (Reference-LAPACK PR 847)
- Removed unused variables from LAPACK
?BDSQR(Reference-LAPACK PR 832) - Fixed a potential crash on allocation failure in LAPACKE
SGEESX/DGEESX(Reference-LAPACK PR 836) - Added a quick return from
SLARUV/DLARUVfor N < 1 (Reference-LAPACK PR 837) - Updated function descriptions in LAPACK
?GEGS/?GEGV(Reference-LAPACK PR 831) - Improved algorithm description in
?GELSY(Reference-LAPACK PR 833) - Fixed scaling in LAPACK
STGSNA/DTGSNA(Reference-LAPACK PR 830) - Fixed crash in
LAPACKE_?geqrtwith row-major data (Reference-LAPACK PR 768) - Added LAPACKE interfaces for
C/ZUNHR_COLandS/DORHR_COL(Reference-LAPACK PR 827) - Added error exit tests for
SYSV/SYTD2/GEHD2to the testsuite (Reference-LAPACK PR 795) - Fixed typos in LAPACK source and comments (Reference-LAPACK PRs 809,811,812,814,820)
- Adopt refactored
?GEBALimplementation (Reference-LAPACK PR 808)
- Declared the arguments of
-
Architecture x86_64:
- Added cpu model autodetection for Intel Alder Lake N
- Added activation of the AMX tile to the Sapphire Rapids
SBGEMMkernel - worked around miscompilations of GEMV/SYMV kernels by gcc's tree-vectorizer
- Fixed runtime detection of Cooperlake and Sapphire Rapids
in
DYNAMIC_ARCH - Fixed feature-based cputype fallback in
DYNAMIC_ARCH - Corrected
ZAXPYresult on old pre-AVX hardware for theINCX=0case - Fixed a potential use of uninitialized variables in ZTRSM
-
Architecture ARMV8:
- implemented SWITCH_RATIO parameter for improved GEMM performance on Neoverse
- activated SVE SGEMM and DGEMM kernels for Neoverse V1
- Improved performance of the SVE CGEMM and ZGEMM kernels on Neoverse V1
- Improved kernel selection for the ARMV8SVE target and added
it to
DYNAMIC_ARCH - Fixed runtime check for SVE availability in
DYNAMIC_ARCHbuilds to take OS or container restrictions into account - Fixed a potential use of uninitialized variables in ZTRSM
-
Architecture POWER PC:
- Fixed compiler warnings in the POWER10 SBGEMM kernel
-
Changes in version 0.3.23:
-
General:
- Fixed a serious regression in
GETRF/GETF2andZGETRF/ZGETF2where subnormal but nonzero data elements triggered the singularity flag - Fixed a long-standing bug in
CSPR/ZSPRin single-threaded operation - for cases where elements of the X vector are real numbers (or complex with only the real part zero)
- Fixed a serious regression in
-
Architecture x86_64:
- Added further CPUID values for Intel Raptor Lake
-
Changes in version 0.3.22:
-
General:
- Updated the included LAPACK to Reference-LAPACK release 3.11.0 plus post-release corrections and improvements
- Added a threshold for multithreading in
SYMM,SYMVandSYR2K - Increased the threshold for multithreading in
SYRK - OpenBLAS no longer decreases the global
OMP_NUM_THREADSwhen it exceeds the maximum thread count the library was compiled for. - Fixed
?GETF2potentially returningNaNwith tiny matrix elements - Fixed
openblas_set_num_threadsto work inUSE_OPENMPbuilds. - Fixed cpu core counting in
USE_OPENMPbuilds returning the number of OMP "places" rather than cores - Fixed stride calculation in the optimized small-matrix path of
complex
SYR - Fixed building of Reference-LAPACK with recent gfortran
- Added new environment variable
OPENBLAS_DEFAULT_NUM_THREADS - Added a GEMV-based implementation of
GEMMT
-
Architecture x86_64:
- Added autodetection of Intel Raptor Lake cpu models
- Added SSCAL microkernels for Haswell and newer targets
- Improved the performance of the Haswell DSCAL microkernel
- Added CSCAL and ZSCAL microkernels for SkylakeX targets
- Fixed detection of gfortran and Cray CCE compilers
- Fixed runtime selection of COOPERLAKE in
DYNAMIC_ARCHbuilds - Worked around gcc/llvm using risky FMA operations in CSCAL/ZSCAL
-
Architecture ARMV8:
- Fixed cross-compilation to CortexA53 with CMAKE
- Fixed compilation with CMAKE and "Arm Compiler for Linux 22.1"
- Added cpu autodetection for Cortex X3 and A715
- Fixed conditional compilation of SVE-capable targets in
DYNAMIC_ARCH - sped up SVE kernels by removing unnecessary prefetches
- Improved the GEMM performance of Neoverse V1
- Added SVE kernels for SDOT and DDOT
- Added an SBGEMM kernel for Neoverse N2
- Improved cpu-specific compiler option selection for Neoverse cpus
- Added support for setting
CONSISTENT_FPCSR
Patch Instructions:
To install this SUSE update use the SUSE recommended
installation methods like YaST online_update or "zypper patch".
Alternatively you can run the command listed for your product:
-
openSUSE Leap 15.5
zypper in -t patch SUSE-2024-1075=1 openSUSE-SLE-15.5-2024-1075=1 -
Basesystem Module 15-SP5
zypper in -t patch SUSE-SLE-Module-Basesystem-15-SP5-2024-1075=1 -
HPC Module 15-SP5
zypper in -t patch SUSE-SLE-Module-HPC-15-SP5-2024-1075=1 -
SUSE Package Hub 15 15-SP5
zypper in -t patch SUSE-SLE-Module-Packagehub-Subpackages-15-SP5-2024-1075=1
Package List:
-
openSUSE Leap 15.5 (aarch64 ppc64le s390x x86_64 i586)
- openblas_0_3_25-gnu12-hpc-debugsource-0.3.25-150500.4.5.1
- libopenblas-gnu-hpc-devel-0.3.25-150500.4.5.1
- openblas_0_3_25-gnu-hpc-debugsource-0.3.25-150500.4.5.1
- openblas-pthreads_0_3_25-gnu12-hpc-debugsource-0.3.25-150500.4.5.1
- libopenblas_pthreads0-debuginfo-0.3.25-150500.4.5.2
- libopenblas-gnu-hpc-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu12-hpc-devel-0.3.25-150500.4.5.1
- openblas-pthreads_0_3_25-gnu-hpc-devel-static-0.3.25-150500.4.5.1
- openblas_serial-debugsource-0.3.25-150500.4.5.1
- openblas_pthreads-devel-static-0.3.25-150500.4.5.2
- libopenblas_pthreads0-0.3.25-150500.4.5.2
- openblas_openmp-devel-static-0.3.25-150500.4.5.2
- libopenblas_0_3_25-gnu-hpc-0.3.25-150500.4.5.1
- openblas_openmp-debugsource-0.3.25-150500.4.5.2
- libopenblas_pthreads-devel-0.3.25-150500.4.5.2
- libopenblas-pthreads_0_3_25-gnu-hpc-0.3.25-150500.4.5.1
- openblas-pthreads_0_3_25-gnu-hpc-debugsource-0.3.25-150500.4.5.1
- openblas_0_3_25-gnu12-hpc-devel-static-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu-hpc-debuginfo-0.3.25-150500.4.5.1
- libopenblas_serial-devel-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu12-hpc-0.3.25-150500.4.5.1
- libopenblas-pthreads-gnu12-hpc-devel-0.3.25-150500.4.5.1
- openblas-pthreads_0_3_25-gnu12-hpc-devel-static-0.3.25-150500.4.5.1
- libopenblas_serial0-debuginfo-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-gnu12-hpc-0.3.25-150500.4.5.1
- libopenblas-gnu12-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-pthreads-gnu-hpc-devel-0.3.25-150500.4.5.1
- libopenblas_openmp-devel-0.3.25-150500.4.5.2
- openblas_serial-devel-static-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu-hpc-debuginfo-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu12-hpc-debuginfo-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu12-hpc-devel-0.3.25-150500.4.5.1
- libopenblas_openmp0-0.3.25-150500.4.5.2
- libopenblas-pthreads-gnu-hpc-0.3.25-150500.4.5.1
- libopenblas_openmp0-debuginfo-0.3.25-150500.4.5.2
- libopenblas-pthreads_0_3_25-gnu12-hpc-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu12-hpc-debuginfo-0.3.25-150500.4.5.1
- openblas_pthreads-debugsource-0.3.25-150500.4.5.2
- libopenblas-pthreads-gnu12-hpc-0.3.25-150500.4.5.1
- libopenblas_serial0-0.3.25-150500.4.5.1
- openblas-common-devel-0.3.25-150500.4.5.1
- openblas_0_3_25-gnu-hpc-devel-static-0.3.25-150500.4.5.1
-
openSUSE Leap 15.5 (x86_64)
- libopenblas_pthreads0-32bit-0.3.25-150500.4.5.2
- libopenblas_openmp-devel-32bit-0.3.25-150500.4.5.2
- libopenblas_pthreads-devel-32bit-0.3.25-150500.4.5.2
- libopenblas_pthreads0-32bit-debuginfo-0.3.25-150500.4.5.2
- libopenblas_openmp0-32bit-0.3.25-150500.4.5.2
- libopenblas_serial-devel-32bit-0.3.25-150500.4.5.1
- libopenblas_serial0-32bit-debuginfo-0.3.25-150500.4.5.1
- libopenblas_openmp0-32bit-debuginfo-0.3.25-150500.4.5.2
- libopenblas_serial0-32bit-0.3.25-150500.4.5.1
-
openSUSE Leap 15.5 (aarch64_ilp32)
- libopenblas_pthreads-devel-64bit-0.3.25-150500.4.5.2
- libopenblas_serial0-64bit-0.3.25-150500.4.5.1
- libopenblas_openmp-devel-64bit-0.3.25-150500.4.5.2
- libopenblas_openmp0-64bit-0.3.25-150500.4.5.2
- libopenblas_serial0-64bit-debuginfo-0.3.25-150500.4.5.1
- libopenblas_serial-devel-64bit-0.3.25-150500.4.5.1
- libopenblas_pthreads0-64bit-debuginfo-0.3.25-150500.4.5.2
- libopenblas_pthreads0-64bit-0.3.25-150500.4.5.2
- libopenblas_openmp0-64bit-debuginfo-0.3.25-150500.4.5.2
-
Basesystem Module 15-SP5 (aarch64 ppc64le s390x x86_64)
- libopenblas_openmp0-0.3.25-150500.4.5.2
- libopenblas_pthreads0-0.3.25-150500.4.5.2
- libopenblas_openmp0-debuginfo-0.3.25-150500.4.5.2
- libopenblas_pthreads0-debuginfo-0.3.25-150500.4.5.2
- openblas_openmp-debugsource-0.3.25-150500.4.5.2
- openblas_serial-debugsource-0.3.25-150500.4.5.1
- openblas-common-devel-0.3.25-150500.4.5.1
-
Basesystem Module 15-SP5 (aarch64 ppc64le x86_64)
- openblas_pthreads-debugsource-0.3.25-150500.4.5.2
- libopenblas_pthreads-devel-0.3.25-150500.4.5.2
-
Basesystem Module 15-SP5 (s390x)
- libopenblas_openmp-devel-0.3.25-150500.4.5.2
-
HPC Module 15-SP5 (aarch64 x86_64)
- openblas_0_3_25-gnu12-hpc-debugsource-0.3.25-150500.4.5.1
- libopenblas-gnu-hpc-devel-0.3.25-150500.4.5.1
- openblas_0_3_25-gnu-hpc-debugsource-0.3.25-150500.4.5.1
- openblas-pthreads_0_3_25-gnu12-hpc-debugsource-0.3.25-150500.4.5.1
- libopenblas-gnu-hpc-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu12-hpc-devel-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu-hpc-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu-hpc-0.3.25-150500.4.5.1
- openblas-pthreads_0_3_25-gnu-hpc-debugsource-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu-hpc-debuginfo-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu12-hpc-0.3.25-150500.4.5.1
- libopenblas-pthreads-gnu12-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-gnu12-hpc-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-gnu12-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-pthreads-gnu-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu-hpc-debuginfo-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu12-hpc-debuginfo-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu12-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-pthreads-gnu-hpc-0.3.25-150500.4.5.1
- libopenblas-pthreads_0_3_25-gnu12-hpc-0.3.25-150500.4.5.1
- libopenblas_0_3_25-gnu12-hpc-debuginfo-0.3.25-150500.4.5.1
- libopenblas-pthreads-gnu12-hpc-0.3.25-150500.4.5.1
-
SUSE Package Hub 15 15-SP5 (ppc64le s390x)
- libopenblas-pthreads-gnu-hpc-0.3.25-150500.4.5.1
- libopenblas-pthreads-gnu-hpc-devel-0.3.25-150500.4.5.1
- libopenblas-gnu-hpc-0.3.25-150500.4.5.1
- libopenblas-gnu-hpc-devel-0.3.25-150500.4.5.1
-
SUSE Package Hub 15 15-SP5 (s390x)
- libopenblas_pthreads0-0.3.25-150500.4.5.2
- libopenblas_pthreads0-debuginfo-0.3.25-150500.4.5.2