Marek Michalowski
650a062e19
Add thread throttling profile for SGEMV on `NEOVERSEV2`
2025-02-20 10:28:31 +00:00
Marek Michalowski
b723c1b7b7
Add thread throttling profile for SGEMM on `NEOVERSEV2`
2025-02-20 10:28:21 +00: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
Harish-Gits
daf16b8229
Adjusted GESV threading logic for optimal performance on WoA
2025-02-12 19:25:25 +05:30
Martin Kroeker
60d0be0e97
Update nrm2.c
2025-02-08 23:42:21 +01:00
Martin Kroeker
0fd5448b2c
Handle INCX=0
2025-02-08 19:33:05 +01:00
Martin Kroeker
db7e5f1fa7
Update gemmt.c
2025-02-06 21:26:20 +01:00
Martin Kroeker
ff30ac9666
Update Makefile
2025-02-06 19:51:23 +01:00
Martin Kroeker
7c3e169b67
Update gemmt.c
2025-02-06 19:21:08 +01:00
Martin Kroeker
09414a4187
Ensure that GEMMTR name appears in XERBLA if gemmt was called as such
2025-02-06 18:52:00 +01:00
Marek Michalowski
838bb57e27
Merge branch 'develop' into develop
2025-01-24 14:19:35 +00:00
Martin Kroeker
a54f9a9c69
Merge pull request #5071 from annop-w/sgemm_throttling
...
Add thread throttling profile for SGEMM on NEOVERSEV1
2025-01-23 22:42:12 +01:00
Marek Michalowski
4d5b13f765
Add thread throttling profile for SGEMV on `NEOVERSEV1`
2025-01-22 10:50:04 +00:00
tingbo.liao
3c8df6358f
Further rearranged the rotm kernel for the different architectures.
...
Signed-off-by: tingbo.liao <tingbo.liao@starfivetech.com>
2025-01-22 11:41:12 +08:00
gxw
e114880dc4
kernel/generic: Fixed cscal and zscal
2025-01-21 11:44:22 +08:00
Annop Wongwathanarat
c8cd8da496
Add thread throttling profile for SGEMM on NEOVERSEV1
2025-01-13 15:43:08 +00:00
Martin Kroeker
a1075477c3
Merge pull request #4994 from martin-frbg/issue4886
...
Disable multithreading in ?TRTRI for small workloads
2024-12-30 23:10:55 +01:00
Martin Kroeker
0c440f8a27
disable multithreading for small workloads
2024-11-27 23:15:41 +01:00
Martin Kroeker
2a290dfc2c
forward GEMM3M calls for GENERIC targets to the regular C/ZGEMM for now
2024-11-14 14:07:08 -08:00
Martin Kroeker
0cf656fd3e
Add copies of GEMMT under its new name GEMMTR
2024-10-30 12:55:14 +01:00
Chris Daley
cb48505251
optimize gemv forwarding on ARM64 systems
2024-10-24 21:05:26 -07:00
Chip Kerchner
36bd3eeddf
Vectorize BF16 GEMV (VSX & MMA). Use GEMM_GEMV_FORWARD_BF16 (for Power).
2024-10-13 13:46:11 -05:00
Chip Kerchner
1d51ca5798
Change multi-threading logic for SBGEMV to be the same as SGEMV.
2024-10-11 16:08:48 -05:00
Martin Kroeker
9762464718
Fix CBLAS interface filling in the wrong triangle for Row-Major
2024-10-09 18:06:39 +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
Martin Kroeker
7878976236
disable forwarding from SBGEMM to SBGEMV for now
2024-08-08 18:03:38 +02:00
Chris Sidebottom
b26424c6a2
Allow opt into GEMM -> GEMV forwarding
2024-07-31 13:09:14 +01:00
Chris Sidebottom
90eb863d4b
Re-add accidental removal
2024-07-31 13:09:14 +01:00
Chris Sidebottom
28b5334f22
Complete implementation of GEMV forwarding
2024-07-31 13:09:14 +01:00
Martin Kroeker
3db5dbc88e
forward to GEMV when one argument is actually a vector
2024-07-31 13:09:14 +01:00
gxw
f3cebb3ca3
x86: Fixed numpy CI failure when the target is ZEN.
2024-07-12 16:09:30 +08:00
Martin Kroeker
2f12a47405
fix build options for CAXPYC/ZAXPYC
2024-06-09 20:32:10 +02:00
Martin Kroeker
db9f7bc552
fix float array types to include bfloat16
2024-06-03 00:22:16 +02:00
Martin Kroeker
076766df4e
Update CMakeLists.txt
2024-05-31 18:23:18 +02:00
Martin Kroeker
ff6670cb83
don't generate non-cblas files for gemm_batch
2024-05-30 18:26:02 +02:00
Martin Kroeker
362a063396
remove return value
2024-05-29 23:16:58 +02:00
Martin Kroeker
89c7bbcba6
add cblas_?gemm_batch
2024-05-29 15:47:02 +02:00
Martin Kroeker
2957281275
Introduce a lower limit for multithreading
2024-05-14 18:59:21 +02:00
Martin Kroeker
5fd871d7ea
Introduce a lower limit for multithreading
2024-05-14 18:48:03 +02:00
gxw
637c650f4f
loongarch64: Add buffer offset for target LOONGSON3R5
2024-05-10 11:42:53 +08:00
Martin Kroeker
93d975d8fd
Merge pull request #4593 from XiWeiGu/loongarch_add_buffer_offset
...
loongarch: Optimizing the performance of the GEMM on servers
2024-04-10 14:23:31 +02:00
gxw
d8c4ea8793
loongarch: Optimizing the performance of the GEMM on servers
2024-04-09 09:03:34 -04:00
Martin Kroeker
d277c6d15b
Merge pull request #4585 from martin-frbg/issue1881
...
Cap the number of parallel threads for GEMM;GETRF and POTRF to ensure sensible workloads on big systems
2024-04-03 18:35:16 +02:00
Igor Zhuravlov
22d305e2df
fix dtrtrs_ and ztrtrs_ to accept case-insensitive parameters uplo and diag
...
Changes to be committed:
modified: interface/lapack/trtrs.c
modified: interface/lapack/ztrtrs.c
2024-04-03 19:01:38 +10:00
Martin Kroeker
68ab5185d0
Update potrf.c
2024-03-27 22:10:01 +01:00
Martin Kroeker
19b29b3448
Update getrf.c
2024-03-27 22:09:30 +01:00
Martin Kroeker
a3354a7630
Cap the number of parallel threads
2024-03-27 22:00:30 +01:00
Martin Kroeker
5da4c93ef2
Cap the number of parallel threads
2024-03-27 20:34:55 +01:00
Martin Kroeker
496106642f
Cap the number of parallel threads
2024-03-27 20:32:11 +01:00
Martin Kroeker
cb8131cfd9
Merge pull request #4499 from kseniyazaytseva/new-tests
...
Tests for BLAS-like and BLAS API
2024-02-25 22:40:59 +01:00
Martin Kroeker
baf88564bc
Fix potential buffer overflow
2024-02-25 19:23:41 +01:00
kseniyazaytseva
7e9b1c0807
fix uninitialized data usage
2024-02-10 00:49:42 +03:00
kseniyazaytseva
c6f30fd414
check for zero inc
2024-02-10 00:48:07 +03:00
kseniyazaytseva
5e9ead09ac
fix info return
2024-02-10 00:47:25 +03:00
Martin Kroeker
500ac4de5e
fix incompatible pointer types
2024-02-08 13:18:34 +01:00
Martin Kroeker
d4db6a9f16
Separate the interface for SBGEMMT from GEMMT due to differences in GEMV arguments
2024-02-06 22:23:47 +01:00
Martin Kroeker
68d354814f
Fix incompatible pointer type in BFLOAT16 mode
2024-02-04 01:14:22 +01:00
Sergei Lewis
3ffd6868d7
Merge branch 'develop' into dev/slewis/merge-from-riscv
2024-02-01 11:29:41 +00:00
Martin Kroeker
47bd064763
Fix names in build rules
2024-01-31 20:49:43 +01:00
Martin Kroeker
a7d004e820
Fix CBLAS prototype
2024-01-31 17:55:42 +01:00
Martin Kroeker
b54cda8490
Unify creation of CBLAS interfaces for ?AMIN/?AMAX and C/ZAXPYC between gmake and cmake builds
2024-01-31 16:00:52 +01:00
Sergei Lewis
1093def0d1
Merge branch 'risc-v' into develop
2024-01-29 11:11:39 +00:00
kseniyazaytseva
f89e0034a4
Fix LAPACK usage from BLAS
2024-01-18 23:22:26 +03:00
Martin Kroeker
f7cf637d7a
redo lost edit
2024-01-18 23:22:26 +03:00
Martin Kroeker
85548e66ca
Fix build failures seen with the NO_LAPACK option - cspr/csymv/csyr belong on the LAPACK list
2024-01-18 23:22:26 +03:00
Martin Kroeker
f129161453
restore C/Z SPMV, SPR, SYR,SYMV
2024-01-18 23:22:26 +03:00
Martin Kroeker
5b4df851d7
fix stray blank on continuation line
2024-01-18 23:20:15 +03:00
kseniyazaytseva
ff41cf5c49
Fix BLAS, BLAS-like functions and Generic RISC-V kernels
...
* Fixed gemmt, imatcopy, zimatcopy_cnc functions
* Fixed cblas_cscal testing in ctest
* Removed rotmg unreacheble code
* Added zero size checks
2024-01-18 23:19:52 +03:00
Martin Kroeker
d2fc4f3b4d
Increase multithreading threshold by a factor of 50
2024-01-17 20:59:24 +01:00
Martin Kroeker
a7ed60bfe9
Add lower limit for multithreading
2023-12-21 20:05:23 +01:00
Angelika Schwarz
5ffbe646e1
Improve matcopy interface
...
* rows = 0 or cols = 0 is now a legal input and
takes quick return path
* Follow BLAS/LAPACK convention that the leading
dimensions must be at least 1.
2023-11-11 11:16:10 +01:00
Martin Kroeker
cd8eb83bae
Fix allocations and compiler warnings in ZROTG ( #4289 )
...
* Clean up ZROTG
2023-11-05 18:13:37 +01:00
Martin Kroeker
4a0f86397b
Merge pull request #4235 from angsch/develop
...
Fix division by zero in [z]rotg
2023-10-09 08:43:42 +02:00
Martin Kroeker
13ba4edf43
fix function prototypes (empty parentheses)
2023-09-30 12:53:35 +02:00
Martin Kroeker
b926e70ebd
Fix typo in build rule of "profiled" sbgemm
2023-09-21 23:07:32 +02:00
Angelika Schwarz
db3a43c8ed
Simplify rotg
...
* The check da != ZERO is no longer necessary since there
is a special case ada == ZERO, where ada = |da|.
* Add the missing check c != ZERO before the division.
Note that with these two changes the long double code
follows the float/double version of the code.
2023-09-20 19:43:00 +02:00
Angelika Schwarz
6876ae0c3b
Fix division by zero in zrotg
...
The cases
[ c s ] * [ 0 ] = [ |db_i| ]
[-s c ] [ i*db_i ] [ 0 ]
and
[ c s ] * [ 0 ] = [ |db_r| ]
[-s c ] [ db_r ] [ 0 ]
computed s incorrectly. To flip the entries of vector,
s should be conjg(db)/|db| and not conjg(db) / da,
where da == 0.0.
2023-09-20 19:11:59 +02:00
Martin Kroeker
42909ce57d
Merge branch 'xianyi:develop' into issue4130
2023-09-01 09:05:58 +02:00
Martin Kroeker
a2a184572c
update zrotg
2023-08-31 23:42:12 +02:00
Martin Kroeker
214be14c1d
Correct INFO returned for lda in non-CBLAS s/dgeadd
2023-08-18 22:48:30 +02:00
Martin Kroeker
4cc804c754
Prepare for INCX < 0 in new NRM2 implementation from BLAS 3.10
2023-08-09 16:13:23 +02:00
Martin Kroeker
04cdf5efb4
fix typo and missing declaration
2023-07-14 00:05:00 +02:00
Martin Kroeker
5e1103b8d7
Update rotg.c
2023-07-13 23:35:38 +02:00
Martin Kroeker
7c75c8b2fe
fix truncated edit
2023-07-13 21:40:12 +02:00
Martin Kroeker
0f2ce93904
typo fix
2023-07-13 10:56:59 +02:00
Martin Kroeker
e08743d977
Update to use safe scaling algorithm from Reference-LAPACK PR 527
2023-07-12 23:02:36 +02:00
Martin Kroeker
7e93ab1b9e
Fix info code returned for invalid ldb
2023-07-09 17:00:25 +02:00
Martin Kroeker
bb862b82d5
Fix integer overflow in multithreading threshold calculation for SYMM/SYRK ( #4116 )
...
* Fix potential integer overflow
2023-06-29 23:59:25 +02:00
Martin Kroeker
c3a2d407a0
Merge pull request #4048 from imzhuhl/spr_sbgemm_fix
...
Sapphire Rapids sbgemm fix
2023-06-17 20:47:09 +02:00
Angelika Schwarz
899c3a6f6a
Improve input argument checks of gemmt
...
* Fix return value for invalid info
* Add missing checks for ldA, ldB
* Use reference-LAPACK like checks (ie ld=0,nrows=0 is invalid)
2023-05-26 08:51:27 +02:00
Honglin Zhu
71e4125795
Fix syscall error on non-x86 platform
2023-05-22 21:59:59 +08:00
Honglin Zhu
90f041e348
Invoke the syscall to allow the use of amx tiles
2023-05-19 10:48:18 +08:00
Ken Ho
df1b1f6a91
More detailed error message in [z]imatcopy.c.
2023-05-12 09:41:52 -07:00
Ken Ho
7a86c437b5
Change some "if" statements to "else if" following suggestion by @mmuetzel.
2023-05-10 09:13:04 -07:00
Ken Ho
33ab415f68
Bug fix and improvements for [z]imatcopy interface.
2023-05-08 14:43:56 -07:00
Martin Kroeker
1f6f7328eb
remove redundant declaration
2023-04-27 09:14:12 +02:00
Martin Kroeker
7152d6b06d
fix cblas_gemmt
2023-04-27 08:36:20 +02:00
Martin Kroeker
38d7a7b562
Fix ?GEMMT
2023-04-16 00:07:58 +02:00
Martin Kroeker
912d713b52
redo lost edit
2023-03-28 18:31:04 +02:00