Martin Kroeker
1abafcd9b2
handle corner cases involving NAN and/or INF
1 year ago
Martin Kroeker
020b3e1682
fix handling of INF arguments
1 year ago
Martin Kroeker
8c05765a5a
fix other corner cases where x=INF
1 year ago
Martin Kroeker
516743f7dc
fix other instances of mishandling INF
1 year ago
Martin Kroeker
9ff4e9714e
additional fixes for handling INF arguments
1 year ago
Martin Kroeker
ce130f11d2
Update zscal.c
1 year ago
Martin Kroeker
ab13cfef93
more fixes for infinite x
1 year ago
Martin Kroeker
ad2b5c67c8
fix another corner case involving infinity
1 year ago
Bart Oldeman
62f7b244ff
Replace use of FLT_MAX in x86_64 zscal.c by isinf()
Commit def4996 fixed issues with inf and nan values in zscal,
but used FLT_MAX, where DBL_MAX or isinf() is more appropriate,
as FLT_MAX is for single precision only.
Using FLT_MAX caused test case failures in the LAPACK tests.
isinf() is consistent with the later fix 969601a1
1 year ago
Martin Kroeker
aa259b141d
Merge pull request #4704 from amritahs-ibm/saxpy_perf_fix
Fix regression SAXPY when compiler with OpenXL compiler.
1 year ago
Chip Kerchner
3a1417671a
POWER: Fixing endianness issue in cswap/zswap kernel for AIX
2 years ago
Amrita H S
87b3d9054f
Fix regression SAXPY when compiler with OpenXL compiler.
SAXPY built with OpenXL regresses when compared to SAXPY
built with gcc. OpenXL compiler doesn't know that the
SAXPY inner kernel assembly is a 64 element loop and
to it the remainder loop is the main loop. It vectorizes
and interleaves the remainder to be a 48 elements per
iteration loop. With a max of 63 iterations, a 48 element
loop is mostly not going to get executed, so the 1 element
scalar loop that is the remainder after that is probably
mostly what gets executed.
This can be fixed by adding a pragma, loop interleave_count(2)
which will result in 8 element loop.
Signed-off-by: Amrita H S <amritahs@linux.vnet.ibm.com>
2 years ago
Martin Kroeker
8da6f7e5f2
Merge pull request #4686 from XiWeiGu/loongarch64_dgemm_kernel_16x6
Loongarch64: Improving the Performance and Stability of dgemm
2 years ago
gxw
f9a26240a7
loongarch64: Fixed icamax_lsx
2 years ago
gxw
cb0f707409
loongarch64: Fixed utest fork:safety
2 years ago
Martin Kroeker
b45d8e1ab2
remove stray comma
2 years ago
gxw
6017ad7146
loongarch64: Update dgemm_kernel_16x4 to dgemm_kernel_16x6
2 years ago
Martin Kroeker
992b71fea2
remove stray comma
2 years ago
Martin Kroeker
d421dec278
Merge pull request #4656 from zboszor/fix-x86-64-build-v2
Add forgotten conditional uses of PREFETCH
2 years ago
Martin Kroeker
ae695d4ca0
Merge pull request #4642 from XiWeiGu/loongarch64_clang
CI: Add clang test for loongarch64
2 years ago
gxw
7cd438a5ac
loongarch64: Fixed clang compilation issues
2 years ago
Zoltán Böszörményi
ca64861ce8
Add forgotten conditional uses of PREFETCH
This fixes a (cross-)compilation/linker error for PRESCOTT
on Yocto.
Signed-off-by: Zoltán Böszörményi <zoltan.boszormenyi@xenial.com>
2 years ago
gxw
9c39e969f5
mips64: Fixed MSA optimization bugs for zgemv and cgemv
2 years ago
Martin Kroeker
4c03ed437f
Fix SICORTEX ASUM/ZASUM and SUM/ZSUM for INCX <=0 ( #4640 )
* Exit early if INCX <= 0
2 years ago
Martin Kroeker
7cfd433d0c
revert the C/Z NRM2 kernels to the base NEON kernel as well
2 years ago
Martin Kroeker
93d975d8fd
Merge pull request #4593 from XiWeiGu/loongarch_add_buffer_offset
loongarch: Optimizing the performance of the GEMM on servers
2 years ago
gxw
d8c4ea8793
loongarch: Optimizing the performance of the GEMM on servers
2 years ago
Chen Yu
8e39c05efd
Get the l2 cache size via environment variable on confidential VM
The CPUID(leaf:2 or leaf:0x80000006) is not supported on some confidential
VMs. As a result the get_l2_size() returns the default 512M which brings
performance issues.
Introduce the environment variable OPENBLAS_L2_SIZE provided by the user
to get the l2 cache size.
Suggested-by: "Keshavamurthy, Anil S" <anil.s.keshavamurthy@intel.com>
Signed-off-by: Chen Yu <yu.c.chen@intel.com>
2 years ago
Martin Kroeker
441c81026e
Add support for Cortex-A76
2 years ago
Martin Kroeker
9ead81bd39
Revert S/DNRM2 to the base NEON kernel to fix precision loss
2 years ago
gxw
96607cbb98
loongarch: Fixed dzamax
Initialize the registers to prevent sporadic errors.
2 years ago
gxw
50869f6ca8
loongarch: Fixed zrot LSX opt
2 years ago
gxw
b5eb9d6bac
loongarch: Fixed {sc/dz}amax LSX opt
2 years ago
gxw
ad13e04669
loongarch: Fixed {s/d/sc/dz}amin LSX opt
2 years ago
gxw
bbf82cb624
loongarch: Fixed {s/d}axpby LSX opt
2 years ago
gxw
ac460eb42a
loongarch: Fixed i{c/z}amin LSX opt
2 years ago
gxw
60e251a1f8
loongarch: Fixed {sc/dz}amax LASX opt
2 years ago
gxw
a10dde5554
loongarch: Fixed {s/d/sc/dz}amin LASX opt
2 years ago
gxw
6534d378b7
loongarch: Fixed {s/d/c/z}sum LASX opt
2 years ago
gxw
6159cffc58
loongarch: Fixed i{s/c/z}amin LASX opt
2 years ago
gxw
7d755912b9
loongarch: Fixed {s/d/c/z}axpby LASX opt
2 years ago
Martin Kroeker
cf80bd8500
Update nrm2_rvv.c
2 years ago
Martin Kroeker
9baa757905
Update nrm2_vector.c
2 years ago
Martin Kroeker
18a6db6862
Update nrm2_vector.c
2 years ago
Martin Kroeker
3752e73919
handle incx < 0
2 years ago
Martin Kroeker
db70c7f7fb
handle incx < 0
2 years ago
Martin Kroeker
dee8557d58
handle incx < 0
2 years ago
Martin Kroeker
d9dff17aec
handle incx < 0
2 years ago
Martin Kroeker
552c521353
remove another early exit for incx < 0
2 years ago
Martin Kroeker
ed532dc75b
remove another early exit for incx < 0
2 years ago