Commit Graph

9676 Commits

Author SHA1 Message Date
Martin Kroeker
e01b1094de Allow VortexM4 on the same fast path only with non-gcc compilers 2025-10-19 13:42:17 -07:00
Martin Kroeker
643a0b53b0 Allow VortexM4 on the direct_SME fast path only for clang-based compilers 2025-10-19 13:37:38 -07: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
2346d0bdc4 Add HAVE_SME for VortexM4 only with non-gcc compilers 2025-10-19 13:32:54 -07:00
Martin Kroeker
8211db6203 Don't enable SME for VortexM4 when the compiler is gcc (which does not support it w/out SVE) 2025-10-19 13:31:30 -07:00
Martin Kroeker
9bfc3612f9 Merge branch 'OpenMathLib:develop' into issue5414 2025-10-12 09:18:06 -07:00
Martin Kroeker
b6d5057493 Merge pull request #5482 from yuyichao/arm-fix
Fix compilation on ARM
2025-10-12 09:16:20 -07:00
Yichao Yu
b94e9b92ad Fix compilation on ARM
Define a dummy function if SME is not supported, following what sgemm does
2025-10-11 20:28:59 -04: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
Martin Kroeker
476677568b Merge pull request #5495 from pcc/fix-cross
Fix cross compilation for x86 targets from non-x86
2025-10-10 11:51:21 -07:00
Martin Kroeker
5ba2b9e138 Merge pull request #5500 from martin-frbg/issue5498
fix misnaming of NVHPC as NVC in ARM64 compiler option selection
2025-10-10 07:41:10 -07:00
Martin Kroeker
d5870f2628 Merge pull request #5496 from martin-frbg/riscv-qemu2
Remove C11 requirement for tests and ensure qemu is installed in the RISCV64 CI job
2025-10-10 05:20:52 -07:00
Martin Kroeker
5c89e4c770 remove the stricted build flags 2025-10-10 11:09:56 +02:00
Martin Kroeker
4291fa2f7a fix misnaming of NVHPC as NVC in ARM64 compiler option selection 2025-10-10 10:51:07 +02: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
f6b0d48a39 Add BUILD_BFLOAT16/HFLOAT16 for RISCV_ZVL256B target 2025-10-09 12:42:36 +02:00
Martin Kroeker
de004136cd Update riscv64_vector.yml 2025-10-09 12:27:07 +02:00
Martin Kroeker
acff97cef1 Ensure qemu is installed for running the tests 2025-10-09 12:04:14 +02:00
Peter Collingbourne
6f3691a84b Fix cross compilation for x86 targets from non-x86
When building on a non-x86 host the Makefile definitions for HAVE_* are
never printed which leads to build failures and/or silently targeting the
wrong microarchitecture. The issue is that INTEL_AMD is defined if the
host architecture is x86, but for cross builds we need to test whether
the target is x86. Test for that using the macro FORCE_INTEL.
2025-10-08 13:22:06 -07:00
Martin Kroeker
4ac29b9a77 Merge pull request #5492 from ChipKerchner/activateSHGEMV
Tie in SHGEMV for RISC-V.
2025-10-08 11:51:52 -07:00
Chip Kerchner
03a83778bb Tie in SHGEMV for RISC-V. 2025-10-08 14:08:29 +00:00
Chip Kerchner
ac1604b40c Merge remote-tracking branch 'refs/remotes/origin/develop' into develop 2025-10-08 13:46:10 +00:00
Martin Kroeker
47a66aef0f Update limits based on benchmarking the SME code on Apple M4 2025-10-08 14:36:17 +02:00
Martin Kroeker
20f5ed1a94 Merge branch 'OpenMathLib:develop' into issue5414 2025-10-08 05:27:28 -07:00
Martin Kroeker
c3ce473ab2 Merge pull request #5491 from martin-frbg/fixup5485
Rework definitions of ?FLOAT16_GEMM_GEMV_FORWARD to avoid undefined behavior
2025-10-08 05:26:28 -07:00
Martin Kroeker
49eca84eaf Merge pull request #5478 from martin-frbg/issue5477
Change all aligned moves in x86_64 MIN/MAX to unaligned
2025-10-08 02:46:00 -07:00
Martin Kroeker
fa912ce852 rework definitions of ?FLOAT16_GEMM_GEMV_FORWARD 2025-10-08 11:11:52 +02:00
Martin Kroeker
7af2225354 Merge pull request #5490 from martin-frbg/issue5489
fix unspecified array size in DGEMV clobber list on POWER10
2025-10-08 01:03:47 -07:00
Martin Kroeker
46fc6c0794 fix unspecified array size in clobber list 2025-10-08 08:23:24 +02:00
Martin Kroeker
064751ee65 Merge pull request #5481 from ChipKerchner/vectorSBGEMV
Add SBGEMV and SHGEMV routines to RISC-V
2025-10-07 13:31:03 -07:00
Chip Kerchner
ba143f3288 Merge remote-tracking branch 'refs/remotes/origin/develop' into develop 2025-10-07 19:01:11 +00:00
Martin Kroeker
de43ccc566 Merge pull request #5485 from Mousius/shgemv-infra
Add Infrastructure for SHGEMV
2025-10-07 11:17:36 -07:00
Chip Kerchner
f552040c5d Fix stride issue. 2025-10-07 17:17:18 +00:00
Chris Sidebottom
37fc3bbca0 Add Infrastructure for SHGEMV
This adds all the relevant bits and pieces to add a `shgemv` path as
well as a future `hgemm`/`hgemv` path in a similar model to `sb` and `b`
interfaces.

I've also fixed a few bits and pieces around `shgemm` which didn't build
in a few situations.
2025-10-07 15:03:24 +00:00
Martin Kroeker
8918247207 Merge pull request #5483 from Mousius/bgemm-correctness
Fix bf16->f32 conversion for NEOVERSEV1 and NEOVERSEN2 targets
2025-10-07 07:55:17 -07:00
Martin Kroeker
106fabcd40 Merge pull request #5484 from martin-frbg/cirrusbsd_upd
Cirrus CI: Update FreeBSD instances to 14.3
2025-10-07 07:27:42 -07:00
Chip Kerchner
aecb7f9537 Change signature of SBGEMV. 2025-10-07 13:14:20 +00:00
Martin Kroeker
db9e7ac224 Update FreeBSD instances to 14.3 2025-10-07 13:55:35 +02:00
Chris Sidebottom
958f721e36 Beta fix for generic gemv T 2025-10-07 10:01:12 +00:00
Chris Sidebottom
578e7dae85 Fix bf16->f32 conversion for NEOVERSEV1 and NEOVERSEN2 targets
This fixes an issue originally introduced with the BGEMM kernel.

I've updated the tests to run with `beta=1.0` so as to test loading and
updating from C.

Alongside this, the tests now return sensible return values to reduce
the risk of them being ignored.

Also fixed a bug in `generic/gemv_t.c` resulting in weird outputs for
`bgemv`.
2025-10-06 18:05:58 +00:00
Chip Kerchner
809e1cba8f Better FP16 vectorized GEMV - 20% faster. 2025-10-06 13:19:03 +00:00
Chip Kerchner
e07a9ae418 Merge branch 'develop' into vectorSBGEMV 2025-10-03 17:13:29 +00:00
Chip Kerchner
1eafda12ad Merge branch 'develop' of https://github.com/OpenMathLib/OpenBLAS into develop 2025-10-03 17:12:56 +00:00
Chip Kerchner
588f0e87cc Add SBGEMV and SHGEMV routines to RISC-V. 2025-10-03 17:09:16 +00:00
Martin Kroeker
c889558317 Rework for DYNAMIC_ARCH use and use of SGEMM functions by SSYMM 2025-10-02 07:39:24 -07:00
Martin Kroeker
4ae3e37b45 restore 2VLx2VL naming 2025-10-02 07:35:30 -07:00
Martin Kroeker
b3d0bc40e9 Update Makefile.L3 2025-10-02 05:13:58 -07:00
Martin Kroeker
ba9d2d29f3 remove sme from M4 Fortran flags as gfortran couples it with sve 2025-10-02 05:11:34 -07:00
Martin Kroeker
b48a089d75 Change all aligned moves to unaligned 2025-10-01 23:36:48 +02:00
Martin Kroeker
fc516af155 Merge branch 'develop' into issue5414 2025-10-01 14:12:59 -07:00