Commit Graph
10034 Commits
Author SHA1 Message Date
Chip Kerchner eb9bbcc299 Common unroll code. 2026-03-14 16:38:12 +00:00
Chip Kerchner fda433f25a Unroll K for N less than or equal to 4. 2026-03-13 22:17:47 +00:00
Chip Kerchner 9c16449dfd Add K-unrolling to M = 8. Other small changes. 2026-03-13 15:59:29 +00:00
Chip Kerchner 6d6af1dee5 Add bool types for C. 2026-03-12 13:13:34 +00:00
Chip Kerchner 376d3a138f Fast performing edges for FP32 GEMM of RVV. 2026-03-12 12:33:25 +00:00
Chip Kerchner 548a9f3eaa Merge remote-tracking branch 'origin/develop' into HEAD 2026-03-11 21:07:28 +00:00
Martin Kroeker bc69f86dba Merge pull request #5671 from martin-frbg/cpuid_x86_cache
Update x86 cache size decoding table from current sandpile.org data
2026-03-11 11:34:44 +01:00
Martin Kroeker 1ff3a1a13d Merge pull request #5670 from amritahs-ibm/handle_fp16_power
powerpc: Bypass FP16 as BF16 on Power
2026-03-11 09:32:31 +01:00
Martin Kroeker 02f5f620de Update cache size decoding table with sandpile.org data 2026-03-10 22:25:48 +01:00
Amrita H S 1a708bac8a powerpc: Bypass FP16 as BF16 on Power
typedef FP16 as BF16 on Power as FP16 is
not yet supported
2026-03-08 23:32:42 -05:00
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
Martin Kroeker 37262654d9 Merge pull request #5667 from fadara01/accelerate_sve128_sbgemm
Accelerate SVE128 SBGEMM/BGEMM
2026-03-06 09:14:44 +01:00
Martin Kroeker 75e2f12dae Merge pull request #5668 from martin-frbg/issue5665
Fix CMake DYNAMIC_ARCH compilation with old compilers on ARM64
2026-03-05 20:40:48 +01:00
Martin Kroeker d073702cdf Merge pull request #5661 from martin-frbg/update_readme_java
Fix leftover wiki links in the README and add java insights from issue #5109
2026-03-05 18:30:33 +01:00
Martin Kroeker 78fd789da0 Add compiler test for SVE support 2026-03-05 17:35:15 +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 22fc689fa7 Merge pull request #5666 from martin-frbg/issue5664
Improve processing of linker arguments in f_check
2026-03-05 14:19:43 +01:00
Martin Kroeker 91eb0a638c Avoid splitting linker args on dashes not preceded by a space 2026-03-05 10:09:29 +01:00
Martin Kroeker 1590d8baf0 fix install.md link for cortex-m 2026-03-04 23:12:33 +01:00
Martin Kroeker 98864c7c6f fix reintroduced typo again 2026-03-04 20:40:45 +01:00
Martin Kroeker db6bbc7150 Merge pull request #5660 from martin-frbg/issue5658
Rewrite the Haswell SROT/DROT kernel tail loop with AVX2 to get consistent FMA rounding
2026-03-04 18:15:34 +01:00
Martin Kroeker ecdabf9d74 Merge pull request #5663 from martin-frbg/issue5662
Move the early exit in ?GESV for NRHS=0 after the GETRF call
2026-03-04 16:14:06 +01:00
Martin Kroeker dc8b16c57c Move the early exit for NRHS=0 after the GETRF call 2026-03-04 12:21:27 +01:00
Martin Kroeker 754ad2ad4f Fix leftover wiki links and add java insights from issue 5109 2026-03-04 11:44:36 +01:00
Martin Kroeker 3166fffcec Merge pull request #5659 from lindsayad/handle-emerald-rapids
Handle Intel's emerald rapids and do some formatting in the cpuid_x86 file
2026-03-03 20:06:49 +01:00
Martin Kroeker df29cc0205 Use AVX2 in the tail loop too for consistent FMA rounding 2026-03-03 15:51:51 +01:00
Alex Lindsay 692023e364 Switch case ordering for exmodel 12 to be sorted 2026-03-02 16:23:38 -07:00
Alex Lindsay 5a534a63e8 clang-format and make cpuid_x86.c more readable 2026-03-02 15:51:46 -07:00
Alex Lindsay 303903e29c Handle emerald rapids model 2026-03-02 15:39:41 -07:00
Martin Kroeker 18638c70ef Merge pull request #5656 from martin-frbg/issue5653
Add pragma to limit optimization in POWER10 DGEMV kernel
2026-02-22 15:54:59 +01:00
Martin Kroeker ef27ec6bed Add pragma to limit optimization level 2026-02-22 13:42:41 +01:00
Martin Kroeker da0e066c9e Merge pull request #5655 from martin-frbg/intel-default-cpuid
Add feature-based fallbacks for unknown/future Intel CPUIDs
2026-02-20 22:19:25 +01:00
Martin Kroeker 1d0ca19457 Add feature-based fallbacks for unknown/future Intel cpus 2026-02-20 16:45:08 +01:00
Martin Kroeker 30cf14c548 Merge pull request #5640 from ChipKerchner/RVV_Narrow_Accumulate_FP16_GEMM
Added ability to accumulate in FP16.  Convert BF16 to FP32.  For FP16 and BF16 GEMM in RISC-V (BF16 now works for pre-RVA23)
2026-02-20 14:22:27 +01:00
Martin Kroeker b4db4a1713 Merge pull request #5654 from martin-frbg/issue5627-2
Use generic SCAL kernels for PPC970 running FreeBSD
2026-02-20 12:45:42 +01:00
Martin Kroeker 43728ade59 Merge pull request #5651 from martin-frbg/issue5650
Fix gmake build with only a subset of precision types
2026-02-20 08:02:50 +01:00
Martin Kroeker 46b963b9a0 Use generic C kernels for SCAL on FreeBSD 2026-02-19 22:46:03 +01:00
Martin Kroeker 822aae6cab Merge pull request #5652 from martin-frbg/issue5649
Fix passing of C/ZDOTC results in C-converted LAPACK  on non-Windows systems
2026-02-19 22:05:10 +01:00
Martin Kroeker dccbf18c1f fix storing of ZDOTC result on non-Windows 2026-02-19 19:45:20 +01:00
Martin Kroeker 0cfb587fde fix storing of ZDOTU result on non-Windows 2026-02-19 18:46:20 +01:00
Martin Kroeker 92fcffff54 fix storing of CDOTC result on non-Windows 2026-02-19 18:45:07 +01:00
Martin Kroeker 5a07c1b61c Delete misplaced lapack-netlib/chpgst.c 2026-02-19 18:42:30 +01:00
Martin Kroeker 11986454b3 fix storing of CDOTU result on non-Windows 2026-02-19 18:05:59 +01:00
Martin Kroeker 946a2cffec fix storing of CDOTC result on non-Windows 2026-02-19 16:53:18 +01:00
Martin Kroeker ef1c06f5eb fix storing of CDOTC result on non-Windows 2026-02-19 14:08:59 +01:00
Martin Kroeker b7542ffb3d fix storing of CDOTC result on non-Windows 2026-02-19 13:34:48 +01:00
Martin Kroeker 5d29f88fed fix storing of CDOTC result on non-Windows 2026-02-19 13:18:20 +01:00
Martin Kroeker 61db4e8191 fix storing of CDOTC result on non-Windows 2026-02-19 13:07:15 +01:00
Martin Kroeker bf0d7eaacc fix storing of CDOTC result on non-Windows 2026-02-19 12:59:46 +01:00
Martin Kroeker 1da181dac6 fix storing of CDOTC result on non-Windows 2026-02-19 12:05:27 +01:00