Chris Sidebottom
2c3cdaf74e
Optimized BGEMV for NEOVERSEV1 target
- Adds bgemv T based off of sbgemv T kernel
- Adds bgemv N which is slightly alterated to not use Y as an
accumulator due to the output being bf16 which results in loss of
precision
- Enables BGEMM_GEMV_FORWARD to proxy BGEMM to BGEMV with new kernels
6 months ago
Martin Kroeker
e2d941e9af
Declare the "small" kernel static in addition to inline
6 months ago
Martin Kroeker
8214700930
Declare the "small" kernel static in addition to inline
6 months ago
Martin Kroeker
39c90f9859
Merge pull request #5380 from quic/topic/sgemm_direct_sme1_alpha_beta
SME1 based direct kernel (with alpha and beta) for cblas_sgemm level 3
6 months ago
Rajendra Prasad Matcha
eae0abfdb6
SME1 based direct kernel with alpha and beta for cblas_sgemm level 3 API.
6 months ago
Chris Sidebottom
947d7af4c9
Fix CMake references to bscal and bgemv
6 months ago
Chris Sidebottom
e105411460
Add infrastructure for bgemv/bscal
- Sets up all the various entrypoints for `bgemv`
- Adds `bscal` for use in the `bgemv` interface
- Adds test cases for comparing `sgemv` and `bgemv`
- Adds generic kernels for `bgemv_n` and `bgemv_t` which are accurate
enough to pass above tests
6 months ago
Chris Sidebottom
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>
6 months ago
Martin Kroeker
343830c26f
Add BGEMM parameter tables
6 months ago
Martin Kroeker
ff614575c9
Fix arm64 HAVE_SME setting for DYNAMIC_ARCH builds
6 months ago
Martin Kroeker
0e11537cab
Merge pull request #5357 from Mousius/bgemm-init
Add infrastructure for BGEMM
6 months ago
Chris Sidebottom
66d9185ebe
Fix CMake support
6 months ago
Martin Kroeker
fd37406817
Merge branch 'develop' into optimized_gemv_n_1x3
6 months ago
Chris Sidebottom
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>
6 months ago
Iha, Taisei
f7ad906b49
Performance improvements of [SD]DOT with loop-unrolling on A64FX
6 months ago
Martin Kroeker
d96daa220d
Merge pull request #5290 from Srangrang/develop
Add support for FP16 to openBLAS and shgemm on RISCV
7 months ago
Martin Kroeker
ee26caffb3
Merge pull request #5309 from davidz-ampere/dev-ampereone
Add support for Ampere AmpereOne processors
7 months ago
davidz-ampere
aa90ab4142
Add support for Ampere AmpereOne processors
7 months ago
Ian McInerney
badef1d32e
Update sbgemm_tcopy_4_neoversev1 kernel to use standard C types
7 months ago
Martin Kroeker
3318a2b904
override CDOT and ZDOT with the generic C kernel
7 months ago
davidz-ampere
84730068af
reduce duplicate kernel code
7 months ago
davidz-ampere
be68ef03b4
Add support for Ampere processors
7 months ago
Srangrang
9f13b2c6ac
style: modify HALF to BFLOAT16 in benchmark folder
7 months ago
Srangrang
ec14e1648c
fix: resolve non-RISCV host build failed issue
- adjust interface to disable "small matrix" pathway
- separate HFLOAT16 from BFLOAT16
- remove SHGEMM_UNROLL_M and SHGEMM_UNROLL_N equal conditions
Related to PR#5290
Co-authored-by Martin
7 months ago
Martin Kroeker
e338d34ce1
fix path
7 months ago
Martin Kroeker
d36093d084
temporarily change default C/ZSCAL to the non-asm implementation
7 months ago
Martin Kroeker
b3c90564d7
resync with the generic arm version for inf/nan handling
7 months ago
Martin Kroeker
6bdc7f9eb7
Merge pull request #5300 from martin-frbg/fixup5296
kernel/riscv64: Fix cscal/zscal for riscv64_generic
7 months ago
Martin Kroeker
73af02b89f
use dummy2 as Inf/NAN handling flag
7 months ago
Martin Kroeker
549a9f1dbb
Disable the default SSE kernels for CSCAL/ZSCAL for now
7 months ago
Martin Kroeker
58eeb9041c
fix handling of dummy2
7 months ago
Martin Kroeker
7c77537b25
Merge pull request #5297 from martin-frbg/zscal_x86_sparc
kernel/(x86|sparc): Fix cscal and zscal by reverting to the generic C kernels
7 months ago
Martin Kroeker
63287e1855
Merge pull request #5296 from martin-frbg/zscal_riscv
kernel/riscv64: Fix cscal and zscal
7 months ago
Martin Kroeker
d2855d3dab
Merge pull request #5285 from martin-frbg/zscal_zarch
kernel/zarch: Fix cscal and zscal
7 months ago
Martin Kroeker
1408be5fe0
Merge pull request #5282 from martin-frbg/zscal_power
kernel/power: Fixed cscal and zscal
7 months ago
Martin Kroeker
1589d0b21e
Merge pull request #5281 from martin-frbg/zscal_arm64
kernel/arm64: fixed cscal and zscal
7 months ago
Martin Kroeker
a86419fb66
Merge pull request #5280 from martin-frbg/zscal_x86_64
kernel/x86_64: fixed cscal and zscal
7 months ago
Martin Kroeker
11ff18bb0f
Merge pull request #5081 from XiWeiGu/kernel_generic_fixed_cscal_zscal
kernel/generic: Fixed cscal and zscal
7 months ago
Martin Kroeker
f4194fc65f
Merge branch 'develop' into la64_fixed_cscal_zscal
7 months ago
Martin Kroeker
e12132abd4
Use generic C/ZSCAL kernels to address inf/nan handling for now
7 months ago
Martin Kroeker
1cefbea7ea
Use generic SCAL kernels to address inf/nan handling for now
7 months ago
Sharif Inamdar
8279e68805
Optimize gemv_n_sve_v1x3 kernel
- Calculate predicate outside the loop
- Divide matrix in blocks of 3
7 months ago
Martin Kroeker
f18b7a46bf
add dummy2 flag handling for inf/nan agnostic zeroing
7 months ago
Martin Kroeker
fe220a0d7d
Merge pull request #5291 from guoyuanplct/develop
kernel/riscv64:fixed the performance problem in RISCV64_ZVL256 when OPENBLAS_K is small
7 months ago
Arne Juul
5442aff218
Accumulate results in output register explicitly
7 months ago
guoyuanplct
2ae019161a
fixed the performance problem in RISCV64_ZVL256 when OPENBLAS_K is small
7 months ago
Srangrang
fb89820f20
Merge branch 'develop' of https://github.com/Srangrang/OpenBLAS into develop
7 months ago
Srangrang
4e1a381e5b
fix: resolve the compilation failure without zfh instruction
- modify the macro conditions in Makefile.system
- Delete development test code
Related to issue#5279
7 months ago
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>
7 months ago
guoyuanplct
d2003dc886
del lines
8 months ago