Commit Graph

27 Commits

Author SHA1 Message Date
Alexandru Ardelean 2d9f339768 openblas: update to 0.3.33
Changelog:
- Fix GCC15 miscompilation of DDOT kernel on arm64 non-SVE targets
- Fix accuracy issue in GEMV kernel for Neoverse V1/SVE targets
- Fix broken STRMM/SSYMM in DYNAMIC_ARCH builds on non-SME hardware
- Add Cortex-A75/A76 autodetection in DYNAMIC_ARCH builds
- Fix LoongArch64 build failure with half-precision float support
- Import LAPACK updates aligned with upcoming 3.13.0 release

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2026-05-07 12:59:11 +03:00
Alexandru Ardelean 5f7107d5e0 openblas: bump to 0.3.31
Dropped patch: 0001-Make-GEMM3M-parameters-available-on-32bit-X86-GENERI.patch
Part of upstream: https://github.com/OpenMathLib/OpenBLAS/pull/5418

Changelog:
- Revert a 0.3.30 optimization that could cause race conditions
  and invalid results in GEMM
- Fix thread lockup with Python 3.9 and NumPy
- Fix deadlock in multithreaded code after fork()
- Add bfloat16 extensions (BGEMM, BGEMV) and basic FP16 infrastructure
- Add batch GEMM operations with strided variants
- Add multithreaded LAPACK SLAED3/DLAED3 for improved eigensolvers
- Add Apple M4 and Intel Lunar Lake support
- Add initial POWER11 architecture support
- Improve GEMM performance on A64FX and ARM processors

Full release notes:
https://github.com/OpenMathLib/OpenBLAS/releases/tag/v0.3.31

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2026-03-13 09:34:51 +02:00
Alexandru Ardelean 087b985e07 openblas: backport version of fix from upstream
From this PR:
  https://github.com/OpenMathLib/OpenBLAS/pull/5442

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2025-09-23 12:03:36 +03:00
Alexandru Ardelean ba6ce219c5 openblas: bump to version 0.3.30
This change updates the version to 0.3.30
Added patch to fix x86 builds.

Also sent upstream:
   https://github.com/OpenMathLib/OpenBLAS/pull/5418

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2025-08-13 09:03:20 +03:00
Alexandru Ardelean 09173df497 openblas: bump to version 0.3.28
Also change URL to new page.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2024-08-23 15:43:27 +02:00
Rosen Penev 558b50f68e openblad: avoid leaking host paths
Potentially fixes compilation.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-05-30 14:13:58 -07:00
krant c0273a1c38 openblas: update to 0.3.27
- Add ONLY_CBLAS make flag to skip tests (fixes x86 builds)

Signed-off-by: krant <aleksey.vasilenko@gmail.com>
2024-04-07 23:34:38 +03:00
krant 8bcd244715 openblas: enable ARM-specific optimizations
OpenBLAS allows to specify per-family CPU optimizations during build stage.
This package supports manual specification of a family during configuration.
This commit adds automatic detection of target family, while keeping manual
override as a backup.

Automatically detected ARM families:
 - Cortex-A9 without NEON
 - Cortex-A9 with NEON
 - Cortex-A15
 - Cortex-A53
 - Cortex-A72

Signed-off-by: krant <aleksey.vasilenko@gmail.com>
2024-02-17 14:51:58 +01:00
Fabrice Fontaine 5afe5c9031 treewide: assign PKG_CPE_ID
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2024-02-04 16:16:10 -08:00
Fabrice Fontaine 820fcc5fb9 treewide: fix licence typos
- PKG_LICENCE -> PKG_LICENSE
- PKC_LICENSE_FILES -> PKG_LICENSE_FILES
- BSD 3-Clause -> BSD-3-Clause
- BSD-3-clause -> BSD-3-Clause
- BSD-2-clause -> BSD-2-Clause
- Public Domain -> Public-Domain
- PublicDomain -> Public-Domain
- Drop unneeded ',' in PKG_LICENSE or PKG_LICENSE_FILES

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2024-01-31 16:00:10 -08:00
Alexandru Ardelean ca6216ef07 openblas: bump to version 0.3.26
Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2024-01-17 00:29:20 +01:00
Alexandru Ardelean 4fdc3b7f81 openblas: bump to version 0.3.25
Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2023-12-18 13:47:03 +02:00
Alexandru Ardelean 832df9a5df openblas: bump to version 0.3.24
Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2023-10-11 18:32:50 +02:00
Alexandru Ardelean 9df165d8f6 openblas: bump to version 0.3.23
Make hard-float a requirement.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2023-04-03 11:14:21 +03:00
Alexandru Ardelean 578166f07f openblas: don't allow ccache use
Fixes https://github.com/openwrt/packages/issues/20596

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2023-03-09 15:32:17 -08:00
Alexandru Ardelean df2f351463 openblas: bump to version 0.3.21
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2022-09-25 11:40:40 -07:00
Zoltan HERPAI 631cb5309d libs: openblas: compile with RISCV64_GENERIC target on riscv64 arch
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2022-05-31 11:30:21 +02:00
Alexandru Ardelean 8a22ad5ebf libs: openblas: bump to version v0.3.19
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-12-27 12:16:12 +02:00
Alexandru Ardelean 443bf87dc8 openblas: default to MIPS24K target for all mips32 targets
Reported via:
  https://github.com/openwrt/packages/pull/16823#issuecomment-945312460

This fails in mips_mip32 targets with the output listed below.

Using the MIPS24K target works fine.

```
mips-openwrt-linux-musl-gcc -c -Os -pipe -mno-branch-likely -mips32 -mtune=mips32 -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -ffile-prefix-map=/builder/shared-workdir/build/sdk/build_dir/target-mips_mips32_musl/OpenBLAS-0.3.18=OpenBLAS-0.3.18 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro  -I/builder/shared-workdir/build/sdk/staging_dir/toolchain-mips_mips32_gcc-11.2.0_musl/usr/include -I/builder/shared-workdir/build/sdk/staging_dir/toolchain-mips_mips32_gcc-11.2.0_musl/include/fortify -I/builder/shared-workdir/build/sdk/staging_dir/toolchain-mips_mips32_gcc-11.2.0_musl/include   -DMAX_STACK_ALLOC=2048 -Wall -mabi=32 -DF_INTERFACE_GFORT -fPIC -DNO_LAPACK -DNO_LAPACKE -DNO_AVX512 -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=2 -DMAX_PARALLEL_NUMBER=1 -DBUILD_SINGLE=1 -DBUILD_DOUBLE=1 -DBUILD_COMPLEX=1 -DBUILD_COMPLEX16=1 -DVERSION=\"0.3.18\" -UASMNAME -UASMFNAME -UNAME -UCNAME -UCHAR_NAME -UCHAR_CNAME -DASMNAME= -DASMFNAME=_ -DNAME=_ -DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -DNO_AFFINITY -I.  -DMAX_STACK_ALLOC=2048 -Wall -mabi=32 -DF_INTERFACE_GFORT -fPIC -DNO_LAPACK -DNO_LAPACKE -DNO_AVX512 -DSMP_SERVER -DNO_WARMUP -DMAX_CPU_NUMBER=2 -DMAX_PARALLEL_NUMBER=1 -DBUILD_SINGLE=1 -DBUILD_DOUBLE=1 -DBUILD_COMPLEX=1 -DBUILD_COMPLEX16=1 -DVERSION=\"0.3.18\" -UASMNAME -UASMFNAME -UNAME -UCNAME -UCHAR_NAME -UCHAR_CNAME -DASMNAME=sgemm -DASMFNAME=sgemm_ -DNAME=sgemm_ -DCNAME=sgemm -DCHAR_NAME=\"sgemm_\" -DCHAR_CNAME=\"sgemm\" -DNO_AFFINITY -I.. -I. -UDOUBLE  -UCOMPLEX gemm.c -o sgemm.o
In file included from ../common.h:581,
                 from gemm.c:41:
gemm.c: In function 'sgemm_':
../param.h:3477:25: error: 'sgemm_p' undeclared (first use in this function); did you mean 'sgemm_'?
 3477 | #define SGEMM_DEFAULT_P sgemm_p
      |                         ^~~~~~~
../common_param.h:1334:25: note: in expansion of macro 'SGEMM_DEFAULT_P'
 1334 | #define SGEMM_P         SGEMM_DEFAULT_P
      |                         ^~~~~~~~~~~~~~~
../common_param.h:1482:33: note: in expansion of macro 'SGEMM_P'
 1482 | #define GEMM_P                  SGEMM_P
      |                                 ^~~~~~~
gemm.c:494:37: note: in expansion of macro 'GEMM_P'
  494 |   sb = (XFLOAT *)(((BLASLONG)sa + ((GEMM_P * GEMM_Q * COMPSIZE * SIZE + GEMM_ALIGN) & ~GEMM_ALIGN)) + GEMM_OFFSET_B);
      |                                     ^~~~~~
../param.h:3477:25: note: each undeclared identifier is reported only once for each function it appears in
 3477 | #define SGEMM_DEFAULT_P sgemm_p
      |                         ^~~~~~~
../common_param.h:1334:25: note: in expansion of macro 'SGEMM_DEFAULT_P'
 1334 | #define SGEMM_P         SGEMM_DEFAULT_P
      |                         ^~~~~~~~~~~~~~~
../common_param.h:1482:33: note: in expansion of macro 'SGEMM_P'
 1482 | #define GEMM_P                  SGEMM_P
      |                                 ^~~~~~~
gemm.c:494:37: note: in expansion of macro 'GEMM_P'
  494 |   sb = (XFLOAT *)(((BLASLONG)sa + ((GEMM_P * GEMM_Q * COMPSIZE * SIZE + GEMM_ALIGN) & ~GEMM_ALIGN)) + GEMM_OFFSET_B);
      |                                     ^~~~~~
make[5]: *** [Makefile:1295: sgemm.o] Error 1
make[5]: Leaving directory '/builder/shared-workdir/
```

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-11-05 14:01:48 +02:00
Eneas U de Queiroz bf99bfbadb openblas: avoid using make -j when building
Set MAKE_NB_JOBS=-1 so that no -j parameter is passed to make when
building the package, honoring the parent make's setting.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2021-10-06 17:09:10 -03:00
Eneas U de Queiroz 7ff29af4fd openblas: fix compilation with mips x4k series CPU
Anything later than MIPS 24k can run MIPS 24k code.  Set OPENBLAS_TARGET
to MIPS24K in those cases.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2021-10-06 15:29:47 -03:00
Alexandru Ardelean 1e22ca7ce1 openblas: bump to 0.3.18
Drops patch, which was upstreamed.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-10-04 08:46:11 -07:00
Alexandru Ardelean d009987c64 libs: openblas: use GENERIC for MIPS{EL} and MIPS24K for CPU_TYPE == 24kc
Up until now, we were defaulting to MIPS24K for all MIPS archs.
But, we should use the GENERIC target for MIPS{EL} and the MIPS24K target
for the 24kc CPU_TYPE.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-09-26 18:08:20 -07:00
Alexandru Ardelean 4c5a05cd63 libs: openblas: patch openblas to handle mips{64}el arch names
Related to PR: https://github.com/xianyi/OpenBLAS/pull/3387

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-09-26 18:08:20 -07:00
Alexandru Ardelean 9b94996370 libs: openblas: use GENERIC target for MIPS64 archs and as default
The GENERIC target for OpenBLAS seems good enough for most configs, so try
to use it for MIPS64 and as default for other archs.
This was already being used for x86{_64} archs.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-09-26 18:08:20 -07:00
Alexandru Ardelean 2067eab84c openblas: bump to version 0.3.17 and fix ccache build
Fixes: https://github.com/openwrt/packages/issues/16271

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-08-02 15:10:55 +02:00
Alexandru Ardelean 9cbf548649 openblas: add initial package
Initial draft PR is:
  https://github.com/openwrt/packages/pull/11894

This one is a bit more complete, and follows packaging practices.

For now, disabling builds on ARC and PowerPC. Will require more work to get
them going.
Explicitly disabling OpenMP support, so that it doesn't get picked by
accident.

Later we may use the `CPU_TYPE` parameter to tweak things a little further.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-07-26 10:27:44 +03:00