Martin Kroeker
55b16e5923
Merge pull request #5643 from martin-frbg/neov2_param
...
Fix SGEMM returning wrong results in multithreading on NeoverseV2
2026-03-06 11:51:08 +01:00
Fadi Arafeh
f30202b705
Accelerate SVE128 SBGEMM/BGEMM
...
This accelerates SBGEMM/BGEMM by extending the existing 8x4 kernel to 8x8 (unrolling N by 8)
Not sure if it's a good idea to delete the previous 8x4 kernel?
Here are the speedups on single core Neoverse-V2 (SVE128) compared to prev state:
Per-shape speedup
M=N=K=64: SBGEMM 1.164x (16.42%), BGEMM 1.133x (13.30%)
M=N=K=128: SBGEMM 1.220x (22.02%), BGEMM 1.186x (18.56%)
M=N=K=256: SBGEMM 1.241x (24.08%), BGEMM 1.235x (23.54%)
M=N=K=512: SBGEMM 1.240x (23.95%), BGEMM 1.227x (22.75%)
M=N=K=1024: SBGEMM 1.251x (25.11%), BGEMM 1.232x (23.23%)
M=N=K=2048: SBGEMM 1.235x (23.47%), BGEMM 1.246x (24.64%)
Signed-off-by: Fadi Arafeh <fadi.arafeh@arm.com >
2026-03-05 13:50:07 +00:00
Martin Kroeker
db00d5c2c9
Fix SGEMM returning wrong results in multithreading on NeoverseV2
2026-02-12 00:02:13 +01:00
Martin Kroeker
7ffce1c788
fix spurious change of (S)BGEMM parameters for NeoverseV1
2026-01-14 19:03:06 +01:00
Martin Kroeker
6de062cfc2
Merge branch 'OpenMathLib:develop' into issue5414
2026-01-11 17:45:11 +01:00
Martin Kroeker
52ec7faf31
Merge pull request #5554 from hideaki-motoki/issue5553_gemm_default_pqr_for_a64fx
...
Setting optimized `[SD]GEMM_DEFAULT_[PQR]` parameters for `A64FX`
2026-01-11 15:59:51 +01:00
Martin Kroeker
2d46f1ec65
Merge branch 'develop' into issue5414
2026-01-09 15:04:06 +01:00
Martin Kroeker
c040d5ed86
Merge pull request #5591 from quic/topic/ssyr2k_direct_sme1
...
Support for SME1 based ssyr2k_direct kernel for cblas_ssyr2k level 3 API
2026-01-08 15:47:38 +01:00
Zhiqing xie
6939a43c3b
Support for SME1 based ssyr2k_direct kernel for cblas_ssyr2k level 3 API
2026-01-08 11:09:04 +08:00
Martin Kroeker
83a788c387
Add BLASLONG cast to the DEFAULT_ALIGN parameter of Cooper Lake and Sapphire Rapids
2025-12-29 23:23:34 +01:00
h-motoki
5f0735832b
fix param.h: turn [sd]gemm_default_[pqr] parameters for a64fx
2025-11-28 13:27:23 +09:00
Martin Kroeker
ea85b6696f
Merge branch 'OpenMathLib:develop' into issue5414
2025-11-23 10:14:07 +01:00
Martin Kroeker
f2d010de12
Merge pull request #5512 from quic/topic/ssyrk_direct_sme1
...
Support for SME1 based ssyrk_direct kernel for cblas_ssyrk level 3 API
2025-11-06 14:06:43 -08:00
changjua
43d38d336f
Support for SME1 based ssyrk_direct kernel for cblas_ssyrk level 3 API
2025-10-20 11:35:20 +08:00
Martin Kroeker
d7b0fccbb4
Enable SME-based kernels for VortexM4 with clang-based compilers only
2025-10-19 13:34:26 -07:00
Martin Kroeker
9bfc3612f9
Merge branch 'OpenMathLib:develop' into issue5414
2025-10-12 09:18:06 -07:00
Martin Kroeker
e40714cabd
Merge pull request #5450 from quic/topic/strmm_direct_sme1
...
Support for SME1 based strmm_direct kernel for cblas_strmm level 3 API
2025-10-11 15:20:19 -07:00
changjua
644ea07ef9
Support for SME1 based strmm_direct kernel for cblas_strmm level 3 API
2025-10-10 10:48:27 +08:00
Martin Kroeker
fc516af155
Merge branch 'develop' into issue5414
2025-10-01 14:12:59 -07:00
Martin Kroeker
e939c6c315
Merge pull request #5471 from quic/topic/ssymm_direct_sme1
...
Support for SME1 based ssymm_direct kernel for cblas_ssymm level 3 API
2025-10-01 06:22:36 -07:00
Rajendra Prasad Matcha
19268471cc
Support for SME1 based ssymm_direct kernel for cblas_ssymm level 3 API
2025-09-30 15:05:33 +05:30
Chip Kerchner
92f09a6a98
Add BF16 sbgemm on RISCV.
2025-09-22 14:32:43 +00:00
Martin Kroeker
cb6c4392a5
Make GEMM3M parameters available on 32bit X86-GENERIC
2025-09-10 22:44:14 +02:00
Martin Kroeker
202a7a0e2a
Separate VORTEXM4 from VORTEX and ARMV9SME
2025-08-18 01:45:40 -07:00
Chris Sidebottom
114316f361
Optimize SBGEMM / BGEMM for NEOVERSEV1 further
...
This changes the kernels to pack full SVE vectors and reduces the
overall complexity of the inner GEMM loop.
2025-08-11 09:25:13 +00:00
Masato Nakagawa
7e29f11396
Multi-thread GEMM Performance Improvement on NeoverseV1 (DIVIDE_RATE=1)
2025-07-29 18:54:36 +09:00
Martin Kroeker
c504aedca1
Merge pull request #5400 from Mousius/neoversev2-target
...
Add NEOVERSEV2 target support
2025-07-25 15:47:06 +02:00
Chris Sidebottom
87247daadc
Add NEOVERSEV2 target support
...
Did a quick run around to make `TARGET=NEVOERSEV2` build successfully.
Fixes #5385
2025-07-24 12:40:31 +01:00
Chris Sidebottom
ea2faf0c9a
Add optimized BGEMM for NEOVERSEN2 target
...
This re-uses the existing NEOVERSEN2 8x4 `sbgemm` kernel to implement `bgemm`.
2025-07-24 10:59:28 +00:00
Chris Sidebottom and Ye Tao
740efd71c4
Add optimized BGEMM kernel for NEOVERSEV1 target
...
This also improves the testing and generic kernel by re-using the BF16
conversion functions.
Built on top of https://github.com/OpenMathLib/OpenBLAS/pull/5357 and derived from https://github.com/OpenMathLib/OpenBLAS/pull/5287
Co-authored-by: Ye Tao <ye.tao@arm.com >
2025-07-10 23:23:27 +00:00
Chris Sidebottom and Ye Tao
f95e7b0e32
Add infrastructure for BGEMM
...
Setting up all the infrastructure for BGEMM support in OpenBLAS, hopefully I found all the right places.
Derived mostly from the previous work done in https://github.com/OpenMathLib/OpenBLAS/pull/5287
Co-authored-by: Ye Tao <ye.tao@arm.com >
2025-07-08 16:22:41 +01:00
Masato Nakagawa
5253c8f165
Multi-thread Performance Improvement of GEMM with DIVIDE_RATE=1 for
...
A64FX.
2025-06-30 21:35:16 +09:00
h-motoki
bba75d5e45
GEMM_PREFERED_SIZE parameter has been changed for A64FX.
2025-06-27 19:37:36 +09:00
Martin Kroeker
d96daa220d
Merge pull request #5290 from Srangrang/develop
...
Add support for FP16 to openBLAS and shgemm on RISCV
2025-06-24 23:10:15 +02:00
davidz-ampere
aa90ab4142
Add support for Ampere AmpereOne processors
2025-06-24 00:12:34 -04:00
davidz-ampere
be68ef03b4
Add support for Ampere processors
2025-06-15 22:00:40 -04:00
gkdddd
670ec6f757
Added shgemm_kernel_8x8 for RISCV64_ZVL128B and shgemm_kernel_16x8 for RISCV64_ZVL256B
...
Added HFLOAT16 support for RISCV64
Added shgemm_kernel_8x8 for RISCV64_ZVL128B and shgemm_kernel_16x8 for RISCV64_ZVL256B based on HFLOAT16
The instruction sets used are ZVFH and ZFH, which need to be supported by RVV1.0
Related to issue #5279
Co-authored-by Linjin Li <linjin_li@163.com >
2025-06-03 20:14:30 +08:00
Srangrang
0a967797a1
Add FP16 support for RISCV
2025-05-27 14:34:57 +08:00
Martin Kroeker
a34b487f22
Remove spurious cast from Alpha and Cell's DEFAULT_ALIGN
2025-04-09 17:25:46 +02:00
Vaisakh K V
f66ca05b31
Merge branch 'develop' into topic/sgemm_direct_sme1
2025-02-13 14:54:37 +05:30
Vaisakh K V
d23eb3b93e
Support for SME1 based sgemm_direct kernel for cblas_sgemm level 3 API
...
* Added ARMV9SME target
* Added SGEMM_DIRECT kernel based on SME1
2025-02-13 14:51:21 +05:30
Ye Tao
c748e6a338
optimized sbgemm kernel for neoverse-v1 (sve-256)
...
Signed-off-by: Ye Tao <ye.tao@arm.com >
2025-02-05 10:06:37 +00:00
Aditya Tewari
4379a6fbe3
* checkpoint sbgemm for SVE-256
2025-02-03 12:49:49 +00:00
Martin Kroeker
926e56e389
Align GEMM3M parameters for GENERIC with ZGEMM and add P/Q/R
2024-11-14 14:04:25 -08:00
Martin Kroeker
a47b3c8867
Fix unroll parameter selection for MIPS64_GENERIC
2024-10-13 22:54:34 +02:00
Martin Kroeker
7c4f3638fd
switch PPCG4 SGEMM kernel to 4x4
2024-10-03 22:00:15 +02:00
gxw
48698b2b1d
LoongArch64: Rename core
...
Use microarchitecture name instead of meaningless strings to name the core,
the legacy core is still retained.
1. Rename LOONGSONGENERIC to LA64_GENERIC
2. Rename LOONGSON3R5 to LA464
3. Rename LOONGSON2K1000 to LA264
2024-09-29 09:35:21 +08:00
Chip Kerchner
b1737698db
Fix DEFAULTS in SBGEMM for POWER10. Also comparisons for SBGEMM unit test can be exactly due to epilison differences.
2024-08-13 07:01:21 -05:00
Piotr Kubaj
4c12090776
Fix build on FreeBSD/powerpc64*
2024-07-10 22:21:48 +00:00
gxw
6017ad7146
loongarch64: Update dgemm_kernel_16x4 to dgemm_kernel_16x6
2024-05-08 10:10:26 +08:00