Commit Graph
9153 Commits
Author SHA1 Message Date
Martin Kroeker f90eff306d Merge pull request #5197 from e4t/z-arch-exec-stack
On zarch don't produce objects from assembler with a writable stack s…
2025-04-03 18:10:41 +02:00
Egbert Eich 61b9339d3a getarch/cpuid.S: Fix warning about executable stack
When using the GNU toolchain a warning is printed about an executible
stack:
 /usr/lib64/gcc/.../x86_64-suse-linux/bin/ld: warning: /tmp/ccyG3xBB.o: missing .note.GNU-stack section implies executable stack
[   15s] /usr/lib64/gcc/.../x86_64-suse-linux/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
to prevent this warning, add:
    ```
            .section        .note.GNU-stack,"",@progbits
    ```

Signed-off-by: Egbert Eich <eich@suse.com>
2025-03-28 18:50:46 +01:00
Egbert Eich ea6515c4b3 On zarch don't produce objects from assembler with a writable stack section
On z-series, the current version of the GNU toolchain produces warnings
such as:
```
/usr/lib64/gcc/[...]/s390x-suse-linux/bin/ld: warning: ztrmm_kernel_RC_Z14.o: missing .note.GNU-stack section implies
executable stack
/usr/lib64/[...]/s390x-suse-linux/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
```
To prevent this message and make sure we are future proof, add
```
	.section        .note.GNU-stack,"",@progbits
```
Also add the `.size` bit to give the asm defined functions a proper size
in the symbol table.

Signed-off-by: Egbert Eich <eich@suse.com>
2025-03-28 18:47:48 +01:00
Martin Kroeker f33943d73e Merge pull request #5196 from martin-frbg/issue5193
Fix misinterpretation of NO_LAPACK=0 and SPMV settings in CMake builds
2025-03-27 09:17:54 +01:00
Martin Kroeker 8b35534201 Merge pull request #5195 from martin-frbg/update-gensymbolpl
Re-synchronize gensymbol.pl with the posix shell version
2025-03-26 23:39:53 +01:00
Martin Kroeker 51c1fb1f93 Fix ?spmv build and misinterpretation of NO_LAPACK=0 2025-03-26 23:36:49 +01:00
Martin Kroeker 3ca1ba1be3 resynchronize with the posix shell version 2025-03-26 18:37:11 +01:00
Martin Kroeker 72f0abeed5 Merge pull request #5191 from Harishmcw/CMake_Symbol_Fix
Fix DLL symbol name pre/postfixing in CMake builds on Windows
2025-03-26 11:22:07 +01:00
Harishmcw 1724b3f104 DLL symbol pre/postfixing in CMake builds 2025-03-26 10:55:50 +05:30
Harishmcw c2e7ab5351 DLL symbol pre/postfixing in CMake builds 2025-03-26 10:50:29 +05:30
Martin Kroeker 200771078f Merge pull request #5190 from Harishmcw/develop
Fix missing commas in gensymbol.pl and DLL symbol pre/postfixing in CMake builds
2025-03-25 22:32:43 +01:00
Martin Kroeker 4e3afa7beb Merge pull request #5175 from shubhamsvc/dgemv_thread_throttling
Add thread throttling profile for DGEMV on NEOVERSEV1
2025-03-25 22:02:48 +01:00
Harishmcw c0a5c9655e Fix missing commas in gensymbol.pl 2025-03-24 13:49:55 +05:30
shubham.chaudhari 8e289ecddc Simplified thread throttling function in gemv 2025-03-18 13:24:05 +05:30
shubham.chaudhari 189dbbc04f Add thread throttling for dynamic arch neoversev1 2025-03-18 13:14:30 +05:30
shubham.chaudhari b6cb5ece58 Add thread throttling profile for DGEMV on NEOVERSEV1 2025-03-18 13:14:30 +05:30
Martin Kroeker 51c244a098 Merge pull request #5184 from taoye9/fix_sbgemv_n_bug
fix bugs in aarch64 sbgemv_n kernel
2025-03-15 17:25:33 +01:00
Ye Tao f27ba5efd1 fix bugs in aarch64 sbgemv_n kernel 2025-03-14 17:55:40 +00:00
Martin Kroeker e9fbe0a838 Merge pull request #5183 from annop-w/fix_sbgemv_t
Fix bug in ARM64 sbgemv_t
2025-03-13 23:04:09 +01:00
Annop Wongwathanarat edef2e4441 Fix bug in ARM64 sbgemv_t 2025-03-13 20:55:31 +00:00
Martin Kroeker b55ca71d5b Merge pull request #5182 from annop-w/sgemm_ncopy
Optimize aarch64 sgemm_ncopy
2025-03-13 16:04:39 +01:00
Martin Kroeker 2f778554b8 Merge pull request #5181 from taoye9/change_sbgemn_cast_bf16
replace customize bf16_to_fp32 with arm neon vcvtah_f32_bf16
2025-03-13 13:50:26 +01:00
Martin Kroeker 66e0f1e621 Merge pull request #5178 from martin-frbg/lapack_cplx_dummy
Add dummy implementations of make_complex_(float/double) to simplify Windows DLL linking
2025-03-13 11:57:29 +01:00
Annop Wongwathanarat 9807f56580 Optimize aarch64 sgemm_ncopy 2025-03-13 10:17:43 +00:00
Martin Kroeker 1ba02656e6 Merge pull request #5177 from martin-frbg/cmakelapacke
Fix omission of LAPACKE interfaces for cgesvdq,strsyl3 and deprecated functions in CMAKE builds
2025-03-13 07:33:52 +01:00
Martin Kroeker 8a418b1aab Add dummy implementations for the LAPACK_COMPLEX_CUSTOM case 2025-03-12 23:20:16 +01:00
Martin Kroeker b34235ca66 Fix inclusion of deprecated interfaces and cgesvdq/strsyl3 2025-03-12 22:41:50 +01:00
Martin Kroeker 37b854769b Merge pull request #5173 from nakagawa-fj/gemm_load_imbalance
Improving Load Imbalance in Thread-Parallel GEMM
2025-03-12 22:38:02 +01:00
Martin Kroeker a3e7b16072 Merge pull request #5157 from manaalmj/feature
Optimize gemv_n_sve kernel
2025-03-12 21:08:23 +01:00
Martin Kroeker 8865850496 Merge pull request #5176 from annop-w/fix_sbgemv_t
Fix aarch64 sbgemv_t compilation error for GCC < 13
2025-03-12 18:49:54 +01:00
Ye Tao 4c00099ed6 replace customize bf16_to_fp32 with arm neon vcvtah_f32_bf16 2025-03-12 16:20:15 +00:00
Annop Wongwathanarat a085b6c9ec Fix aarch64 sbgemv_t compilation error for GCC < 13 2025-03-12 14:52:42 +00:00
Masato Nakagawa 80d3c2ad95 Add Improving Load Imbalance in Thread-Parallel GEMM 2025-03-11 20:18:20 +09:00
manjam01 5c4e38ab17 Optimize gemv_n_sve kernel 2025-03-10 16:39:20 +00:00
Martin Kroeker 39eb43d441 Improve thread safety of pthreads builds that rely on C11 atomic operations for locking (#5170)
* Tighten memory orders for C11 atomic operations
2025-03-07 13:48:28 +01:00
Martin Kroeker 1d5ed5c46b Merge pull request #5168 from taoye9/add_sbgemvn_on_neonversen2
Add dispatch of SBGEMVNKERNEL for NEOVERSEN2 and NEOVERSEV2
2025-03-04 16:39:22 +01:00
Martin Kroeker 7338a473a7 Merge pull request #5150 from Harishmcw/WoA-Experiments
Redefined threading logic for GESV and GEMV on WoA
2025-03-03 21:45:53 +01:00
Martin Kroeker 5f200dca54 Merge pull request #5166 from martin-frbg/issue5158
Expose the option to build without LAPACKE to ccmake
2025-03-03 16:02:02 +01:00
Martin Kroeker 8b98db13e3 Merge pull request #5167 from taoye9/fix_sbgemv_n_kernel_typo
fix minior issues of redeclaration of float x0,x1 in sbgemv_n_neon.c
2025-03-03 14:47:53 +01:00
Ye Tao 6b8b35cdf2 fix minior issues of redeclaration of float x0,x1 in sbgemv_n_neon.c 2025-03-03 11:55:27 +00:00
Ye Tao 38ee7c9301 Add dispatch of SBGEMVNKERNEL for NEOVERSEN2 and NEOVERSEV2 2025-03-03 11:32:05 +00:00
Martin Kroeker 217324d880 Merge pull request #5162 from taoye9/add_sbgemv_tests
add beta and alpha testcase for sbgemv
2025-03-03 08:10:12 +01:00
Martin Kroeker e4630ed15a Merge pull request #5160 from taoye9/sbgemv_n_neon
Add SBGEMVN Kernel for ARM64
2025-03-02 23:50:42 +01:00
Martin Kroeker 35914aa9a2 Expose the option to build without LAPACKE to ccmake 2025-03-02 22:54:59 +01:00
Martin Kroeker 2b941c44b5 Merge branch 'develop' into sbgemv_n_neon 2025-03-02 22:39:32 +01:00
Martin Kroeker c797e27a1c Merge pull request #5159 from annop-w/sbgemv_t_bfdot
Add sbgemv_t_bfdot kernel for ARM64
2025-03-02 22:23:19 +01:00
Ye Tao 4346b91559 add beta and alpha testcase for sbgemv 2025-02-28 16:48:47 +00:00
Ye Tao 35bdbca153 Add sbgemv_n_neon kernel for arm64. 2025-02-28 14:37:06 +00:00
Annop Wongwathanarat edaf51dd99 Add sbgemv_t_bfdot kernel for ARM64
This improves performance for sbgemv_t by up to 100x on NEOVERSEV1.
The geometric mean speedup is ~61x for M=N=[2,512].
2025-02-28 12:31:50 +00:00
Martin Kroeker ef9e3f7159 Merge pull request #5149 from martin-frbg/fixup5077-5088
Make the Neoverse GEMM/GEMV throttling code conditional on SMP
2025-02-25 14:01:13 +01:00