Ashwin Sekhar T K
3b5ffb49d3
Cortex-A57: Improve DGEMM 8x4 Implementation
2016-03-24 10:25:18 +05:30
Werner Saar
55eda3813b
added optimized zaxpy kernel for POWER8
2016-03-23 11:20:23 +01:00
Werner Saar
0664ba4c97
added optimized daxpy kernel for POWER8
2016-03-22 14:50:03 +01:00
Werner Saar
11c44dede1
added optimized sdot kernel for POWER8
2016-03-21 13:18:23 +01:00
Werner Saar
9e4584d069
added optimized zdot kernel for POWER8
2016-03-21 10:12:07 +01:00
Werner Saar
cd9fafc054
ddot for POWER8: updated licence information
2016-03-20 11:19:27 +01:00
Werner Saar
84b92e6373
added optimized ddot kernel for POWER8
2016-03-20 11:06:06 +01:00
wernsaar
c279a53ed8
Merge pull request #806 from wernsaar/develop
...
adding optimized single precision blas level3 kernels for POWER8
2016-03-18 12:46:16 +01:00
Werner Saar
e1df5a6e23
fixed sgemm- and strmm-kernel
2016-03-18 12:12:03 +01:00
Werner Saar
5c658f8746
add optimized cgemm- and ctrmm-kernel for POWER8
2016-03-18 08:17:25 +01:00
Ashwin Sekhar T K
5ac02f6dc7
Optimize Dgemm 4x4 for Cortex A57
2016-03-14 19:35:23 +05:30
Ashwin Sekhar T K
7aa1ad4923
Functional Assembly Kernels for CortexA57
...
Adding functional (non-optimized) kernels for Cortex-A57
with the following layouts.
SGEMM - 16x4, 8x8
CGEMM - 8x4
DGEMM - 8x4, 4x8
2016-03-14 19:33:21 +05:30
Werner Saar
dcd15b546c
BUGFIX: KERNEL.POWER8
2016-03-14 14:36:59 +01:00
Werner Saar
96284ab295
added sgemm- and strmm-kernel for POWER8
2016-03-14 13:52:44 +01:00
Werner Saar
faa5e2e5e3
FIX: forgot the add the files cgemv_n_4.c and cgemv_t_4.c
2016-03-10 11:10:38 +01:00
Werner Saar
fdf291be30
Added optimized cgemv_n and cgemv_t kernels for bulldozer, piledriver and steamroller
2016-03-10 09:42:07 +01:00
Werner Saar
c99cc41cbd
Added optimized zgemv_n kernel for bulldozer, piledriver and steamroller
2016-03-09 14:02:03 +01:00
Werner Saar
acdff55a6a
Bugfix for ztrmv
2016-03-07 09:39:34 +01:00
Zhang Xianyi
7d6b68eb4a
Refs #786 . Revert to default assembly kernel.
2016-03-07 11:34:58 +08:00
Werner Saar
cd5241d0cf
modified KERNEL for power, to use the generic DSDOT-KERNEL
2016-03-06 09:07:24 +01:00
Zhang Xianyi
8c43d7fa5f
Merge remote-tracking branch 'origin/power8' into develop
...
Refs #774
2016-03-05 06:03:19 -05:00
Werner Saar
085f215257
Modified assembly label name, so that they are hidden.
...
Added license informations.
2016-03-05 10:27:27 +01:00
Zhang Xianyi
8f758eeff9
Refs #786 . avoid old assembly c/zgemv kernels.
2016-03-05 08:32:03 +08:00
Werner Saar
0afc76fd65
enabled gemm_beta assembly kernels
2016-03-04 15:01:15 +01:00
Werner Saar
91e1c5080c
modified configuration, to use power6 sgemm kernel for power8
2016-03-04 13:38:57 +01:00
Werner Saar
73f04c2c72
enabled hemv assemly function for power8
2016-03-04 13:20:50 +01:00
Werner Saar
3e633152c6
enabled symv assembly kernels on power8
2016-03-04 13:08:18 +01:00
Werner Saar
d5130ce7e3
enabled gemv assembly on power8
2016-03-04 12:53:31 +01:00
Werner Saar
4824b88fcb
enabled all level1 assembly kernels for power8
2016-03-04 12:35:25 +01:00
Werner Saar
b752858d6c
added dgemm-, dtrmm-, zgemm- and ztrmm-kernel for power8
2016-03-01 07:33:56 +01:00
Zhang Xianyi
efa4f5c936
Refs #695 #783 . Replace default x86_64 cgemv_t
...
asm kernel by C kernel.
2016-03-01 11:18:56 +08:00
Zhang Xianyi
74b0672223
Fix c/zaxpyc kernel bug on Cortex-A57.
2016-02-23 22:47:53 +00:00
Zhang Xianyi
6e7be06e07
Refs JuliaLang/julia#5728 . Fix gemv performance bug on Haswell Mac OSX.
...
On Mac OS X, it should use .align 4 (equal to .align 16 on Linux).
I didn't get the performance benefit from .align. Thus, I deleted it.
2016-02-19 17:56:07 -05:00
Zhang Xianyi
d06b92906a
Add gemm3m building for CMake.
2016-02-12 05:02:51 +08:00
Zhang Xianyi
962376664d
Refs #768 . Swap the result of zdot x87 fp kernel.
2016-02-02 09:15:02 +08:00
Zhang Xianyi
c44ff4d648
Refs #714 . avoid compiling warnings.
2016-01-28 04:38:07 +08:00
Werner Saar
63a7d7fb24
updated gemv_n_vfpv3.S for armv7
2016-01-25 15:00:13 +01:00
Werner Saar
b4ede558a5
updated nrm2 kernel for armv7
2016-01-25 11:55:25 +01:00
Werner Saar
de3e2d4349
updated trmm kernels for armv7
2016-01-25 11:08:56 +01:00
Werner Saar
a0e51e96f1
updated gemm kernels for armv7
2016-01-25 10:46:10 +01:00
Werner Saar
c2891330bc
updated KERNEL.ARMV6
2016-01-24 17:12:07 +01:00
Werner Saar
ceaa931e48
updated gemv kernel for armv6
2016-01-24 16:31:19 +01:00
Werner Saar
eaa63165df
updated cgemv and zgemv kernels for armv6
2016-01-24 14:42:38 +01:00
Werner Saar
c65357c566
updated trmm_kernels for armv6
2016-01-24 13:03:33 +01:00
Werner Saar
e63e9f9f26
updated gemm_kernels for armv6
2016-01-24 11:55:50 +01:00
Werner Saar
aafd3ab60e
updated cdot and zdot on arm
2016-01-24 10:56:49 +01:00
Werner Saar
d2f84c9c8a
Ref #740 : updated nrm2_vfp.S
2016-01-23 17:47:58 +01:00
Werner Saar
ca32253f32
Ref #740 : updated asum_vfp.S and iamax_vfp.S
2016-01-23 14:44:34 +01:00
Werner Saar
9066d1f982
Ref #750 and Ref #740 : bugfix for sdot, dsdot and ddot on arm
2016-01-23 11:59:51 +01:00
Werner Saar
692d9c881c
Ref #740 : simple solution to clear floating point register on arm
2016-01-17 15:37:12 +01:00
Zhang Xianyi
3602a2cd1f
#736 Revert #733 patch to fix bus error on ARM.
2016-01-12 22:19:58 +00:00
Zhang Xianyi
e3e20e2242
Merge pull request #733 from yuyichao/arm-asm
...
Do not use vsub to clear the register values
2016-01-05 19:35:12 -06:00
Yichao Yu
594b9f4c73
Do not use vsub to clear the register values since it doesn't work with non-normal numbers.
2016-01-05 16:54:05 +00:00
Werner Saar
c8f2c5d636
added optimized trsm_kernels
2016-01-05 13:05:05 +01:00
Ashwin Sekhar T K
318f0949c3
lapack-test fixes in nrm2 kernels for Cortex A57
2015-11-23 13:43:36 +05:30
Ashwin Sekhar T K
98965da2e8
lapack-test fixes for Cortex A57
2015-11-20 01:15:04 +05:30
Ashwin Sekhar T K
c99c43d51e
Optimized trmm kernels for CORTEXA57
2015-11-09 14:15:54 +05:30
Ashwin Sekhar T K
1397b47197
Optimized zgemm kernel for CORTEXA57
2015-11-09 14:15:53 +05:30
Ashwin Sekhar T K
45f78963ac
Optimized cgemm kernel for CORTEXA57
...
Also, add a generic ztrmm 4x4 kernel
2015-11-09 14:15:53 +05:30
Ashwin Sekhar T K
402443bf9c
Optimized dgemm kernel for CORTEXA57
2015-11-09 14:15:53 +05:30
Ashwin Sekhar T K
19fdbee291
Improve the sgemm kernel for CORTEXA57
2015-11-09 14:15:53 +05:30
Ashwin Sekhar T K
3b0cdfab1e
Optimized gemv kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:52 +05:30
Ashwin Sekhar T K
46efa6a1da
Optimized swap kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:52 +05:30
Ashwin Sekhar T K
ea1465cdf8
Optimized scal kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:52 +05:30
Ashwin Sekhar T K
fb4be3b3eb
Optimized rot kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:52 +05:30
Ashwin Sekhar T K
6c2f4ddbcd
Optimized nrm2 kernels for CORTEXA57
2015-11-09 14:15:51 +05:30
Ashwin Sekhar T K
870c4d49c0
Optimized dot kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:51 +05:30
Ashwin Sekhar T K
cd7684097c
Optimized copy kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:51 +05:30
Ashwin Sekhar T K
2690b71b1f
Optimized axpy kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:51 +05:30
Ashwin Sekhar T K
3e4acedf0e
Optimized asum kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:51 +05:30
Ashwin Sekhar T K
2610752dbb
Optimized iamax kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:50 +05:30
Ashwin Sekhar T K
dbb213655e
Optimized amax kernels for CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:50 +05:30
Ashwin Sekhar T K
f2f8a0fe8b
Adding arm64 target CORTEXA57
...
Co-Authored-By: Ralph Campbell <ralph.campbell@broadcom.com>
2015-11-09 14:15:50 +05:30
Ralph Campbell
c053559ed9
Minor C code fixes in kernel/arm
2015-11-09 14:15:49 +05:30
Ralph Campbell
55e4332f00
Remove duplicate -D args in kernel/Makefile.L1
2015-11-09 14:15:48 +05:30
Zhang Xianyi
3e8d6ea74f
Init POWER8 kernels by POWER6.
2015-11-03 12:34:23 +08:00
Zhang Xianyi
69363622a8
Fix DYNAMIC_ARCH=1 bug.
2015-10-27 05:10:40 +08:00
Zhang Xianyi
53b6023a6c
Fix cmake bug on MSVC 32-bit.
2015-10-26 14:52:13 -05:00
Zhang Xianyi
309875de3c
Fix cmake bug on x86 32-bit.
...
e.g. Build 32-bit on 64-bit Linux.
cmake -DBINARY=32
2015-10-27 02:54:53 +08:00
Zhang Xianyi
8fade093aa
Fixed cmake bug on Visual Studio.
2015-10-20 14:37:22 -05:00
Zhang Xianyi
96f0bbe067
Fixed cmake bug on haswell.
2015-10-21 02:24:54 +08:00
Zhang Xianyi
d8392c1245
Fixe cmake config bugs.
2015-10-20 04:30:55 +08:00
Zhang Xianyi
94b125255f
Merge branch 'develop' into cmake
...
Conflicts:
driver/others/memory.c
2015-10-13 04:46:08 +08:00
Martin Koehler
711ca33bc6
Improved Ximatcopy when lda==ldb.
...
The Ximatcopy functions create a copy of the input matrix
although they seem to work inplace. The new routines
XIMATCOPY_K_YY perform the operations inplace if the leading
dimension does not change.
2015-09-07 14:36:16 +02:00
Zhang Xianyi
7df0820160
Use C kernels for s/dgemv on x86.
2015-08-19 08:07:47 -05:00
Zhang Xianyi
f874465bb8
Use cmake to build OpenBLAS GENERIC Target on MSVC x86 64-bit.
...
Disable CBLAS and LAPACK.
2015-08-10 14:10:44 -05:00
Zhang Xianyi
898fc7552a
Merge pull request #612 from ibmsoe/ppc64le
...
ppc64le platform support (ELF ABI v2)
2015-08-04 16:58:24 -05:00
Zhang Xianyi
ab0a0a75fc
Merge branch 'develop' into cmake
2015-08-03 23:59:01 -05:00
Zhang Xianyi
1cf2b10224
Use pure C generic target on x86 and x86_64.
...
make TARGET=GENERIC
?gemm3m is unimplemented on generic target.
2015-08-03 23:55:56 -05:00
Zhang Xianyi
7ac7e147d4
Fixed cmake building bugs on Linux. Disable LAPACK by default.
2015-08-04 04:37:05 +08:00
Matthew Brandyberry
7ba4fe5afb
ppc64le platform support (ELF ABI v2)
2015-07-21 22:20:19 -05:00
Zhang Xianyi
dcd5ba4443
Merge branch 'cmake' of https://github.com/hpanderson/OpenBLAS into hpanderson_cmake
2015-07-22 04:06:39 +08:00
Werner Saar
e7c969e164
added optimized dtrmm_kernel for haswell
2015-06-13 16:16:29 +02:00
Werner Saar
9bd962f655
modified haswell parameter dgemm_unroll_n
2015-06-13 10:28:27 +02:00
Werner Saar
24f58c8bb1
added optimized cscal and zscal kernels for steamroller
2015-05-18 12:40:07 +02:00
Werner Saar
95b1faf667
added optimized cscal and zscal kernels for steamroller and piledriver
2015-05-18 10:50:57 +02:00
Werner Saar
2d9e406050
added optimized cscal kernel for sandybridge
2015-05-18 08:46:06 +02:00
Werner Saar
59083e3ce1
added optimized cscal kernel for bulldozer
2015-05-18 07:33:52 +02:00
wernsaar
685be40339
Merge pull request #571 from wernsaar/develop
...
added optimized cscal and zscal functions
2015-05-17 14:09:14 +02:00
Werner Saar
31c9e399e9
added optimized cscal kernel for haswell
2015-05-17 13:44:09 +02:00
Werner Saar
7de6bb9889
added optimized zscal kernel for bulldozer
2015-05-17 11:45:19 +02:00
Werner Saar
d63034303b
added optimized zscal kernel for haswell
2015-05-16 16:41:45 +02:00
Zhang Xianyi
51ff17d46e
Add AMD Excavator target.
2015-05-13 16:16:30 -05:00
Werner Saar
18e90ee2e3
bugfix: added static to functions
2015-05-13 13:31:26 +02:00
Werner Saar
e00cccc41e
added optimized dscal kernel for piledriver
2015-05-13 13:05:35 +02:00
Werner Saar
73f09bf64f
optimized dscal kernel for increment != 1
2015-05-13 12:14:39 +02:00
Werner Saar
02e772c7e4
added optimized dscal kernel for haswell
2015-05-12 17:19:58 +02:00
Werner Saar
7aee913991
added optimized dscal kernel for sandybridge
2015-05-12 16:27:43 +02:00
Werner Saar
e50a933037
added optimized dscal kernel for bulldozer
2015-05-12 12:28:44 +02:00
Werner Saar
133c11a156
updated dgemv_n kernel for nehalem
2015-04-30 14:38:06 +02:00
Werner Saar
30f52d53df
optimized dgemv_n kernel for haswell
2015-04-30 12:11:39 +02:00
Werner Saar
5e83d80725
optimized dger kernel for sandybridge
2015-04-28 16:58:11 +02:00
Werner Saar
b2e1797dc6
added optimized sger kernel for sandybridge
2015-04-28 15:33:38 +02:00
Werner Saar
e216f686cb
optimized saxpy and daxpy for sandybridge
2015-04-28 10:18:32 +02:00
Werner Saar
fc0e0391f3
bugfixes: replaced int with BLASLONG
2015-04-24 14:30:44 +02:00
Werner Saar
c22068c406
optimized sdot.c for increments != 1
2015-04-24 13:13:20 +02:00
Werner Saar
dee100d0e4
optimized saxpy.c for increments != 1
2015-04-24 11:52:59 +02:00
Werner Saar
0273966abb
optimized daxpy kernel for increments != 1
2015-04-24 11:39:17 +02:00
Werner Saar
3a67daa954
optimized ddot.c for increments != 1
2015-04-24 10:56:55 +02:00
Werner Saar
b4f2153dcd
added optimized ssymv kernels for sandybridge
2015-04-23 12:19:24 +02:00
Werner Saar
1c4b0eeae3
added optimized ssymv kernels for haswell
2015-04-23 10:23:13 +02:00
Werner Saar
1bec9abb9a
added optimized dsymv kernels for sandybridge
2015-04-22 12:09:43 +02:00
Werner Saar
3814bf60d3
added optimized dsymv kernels for haswell
2015-04-22 10:42:50 +02:00
Werner Saar
6d0db0151f
added optimized zaxpy-kernels
2015-04-16 11:19:37 +02:00
Zhang Xianyi
37b9033c90
Merge pull request #543 from jeromerobert/develop
...
Fix a buffer overflow with MAX_STACK_ALLOC size in dgemv_t
2015-04-15 11:18:14 -05:00
Werner Saar
13889515b3
added optimized caxpy-kernel for sandybridge
2015-04-15 16:29:25 +02:00
Werner Saar
248c9340c3
added optimized caxpy-kernel for haswell
2015-04-15 15:16:31 +02:00
Werner Saar
e9f33b4ca7
added optimized caxpy-kernel for steamroller
2015-04-15 13:49:23 +02:00
Werner Saar
f5d847122a
updated caxpy_microk_bulldozer-2.c and caxpy.c
2015-04-15 11:59:38 +02:00
Jerome Robert
a4c96eca67
Fix a buffer overflow with MAX_STACK_ALLOC size in dgemv_t
...
Refs #478 , #482 , 9798481
, fd9fd42
2015-04-15 11:46:48 +02:00
Werner Saar
baa0363ea2
add optimized ddot-kernel for piledriver
2015-04-14 15:09:13 +02:00
Werner Saar
34ba66606a
add optimized daxpy-kernel for piledriver
2015-04-14 14:23:29 +02:00
Werner Saar
f615dc7603
added optimized saxpy kernel for steamroller
2015-04-14 09:09:39 +02:00
Werner Saar
331c417637
optimized saxpy for piledriver
2015-04-14 08:34:11 +02:00
Werner Saar
d7a17ad85d
optimized sdot-kernel for pilediver
2015-04-13 13:19:21 +02:00
Werner Saar
d35f6c63c2
add optimized daxpy-kernel for steamroller
2015-04-13 12:22:43 +02:00
Werner Saar
166d76e864
added optimized sdot-kernel for steamroller
2015-04-11 08:48:18 +02:00
Werner Saar
f9f127d838
added optimized ddot kernel for steamroller
2015-04-10 16:18:03 +02:00
wernsaar
62231ab337
Merge pull request #538 from wernsaar/develop
...
Added optimized cdot- and zdot-kernels
2015-04-10 16:03:37 +02:00
Werner Saar
3119def9a7
updated cdot and zdot
2015-04-10 11:10:31 +02:00
Werner Saar
33b332372a
add optimized cdot- and zdot-kernel for sandybridge
2015-04-10 09:37:26 +02:00
Werner Saar
fd838c75bc
add optimized cdot- and zdot-kernel for haswell
2015-04-09 15:13:52 +02:00
Werner Saar
b57a60dac8
updated cdot and zdot for piledriver
2015-04-09 10:33:46 +02:00
Werner Saar
5c51163972
added optimized cdot- and zdot-kernel for steamroller
2015-04-09 09:45:23 +02:00
Werner Saar
9299d8cfd6
added optimized cdot- and zdot-kernels for bulldozer
2015-04-08 16:29:55 +02:00
Zhang Xianyi
0a3d3b945d
Refs #535 . Fix the wrong vector instruction in sgemm sandy bridge kernel.
2015-04-08 03:55:49 +08:00
Werner Saar
60c6dec6e6
updated some lines for bulldozer
2015-04-06 18:47:16 +02:00
Werner Saar
47898cca35
added optimized saxpy- and daxpy-kernel for sandybridge
2015-04-06 16:05:16 +02:00
Werner Saar
53bb924287
added optimized saxpy- and daxpy-kernel for haswell
2015-04-06 12:33:16 +02:00
Werner Saar
a901b065d3
added optimized ddot-kernel for sandybridge
2015-04-05 20:19:38 +02:00
Werner Saar
3937e2a0a0
add optimized sdot-kernel for sandybridge
2015-04-05 19:47:05 +02:00
Werner Saar
9707d608d5
removed double definition line
2015-04-05 18:35:34 +02:00
Werner Saar
701b9d7556
added optimized sdot- and ddot-kernel for HASWELL
2015-04-05 17:57:53 +02:00
Zhang Xianyi
e5b96e55a7
Fix build bug for ARM64.
2015-03-24 15:27:17 -05:00
Hank Anderson
84d90d6ed8
Fixed some compiler errors/warnings for clang.
2015-02-25 11:52:25 -06:00
Hank Anderson
518e2424a8
Fixed bad filename for cpuid.S compile.
2015-02-25 11:51:29 -06:00
Zhang Xianyi
ea7f9dacf4
Refs #509 . Fixed geadd building bug with DYNAMIC_ARCH=1.
2015-02-26 01:47:11 +08:00
Hank Anderson
0d8e227ea7
Changed strategy for setting preprocessor definitions.
...
Instead of generating separate object files for each permutation of
defines for a source file, GenerateNamedObjects now writes an entirely
new source file and inserts the defines as #define c statements.
This solves a problem I ran into with ar.exe where it was refusing to
link objects that had the same filename despite having different paths.
2015-02-24 12:26:33 -06:00
Hank Anderson
12d1fb2e40
Fixed incorrect object name in kernel CMakeLists.txt
2015-02-24 10:30:16 -06:00
Hank Anderson
1b7f427401
Added conj gemv objects for complex build.
2015-02-23 10:24:31 -06:00
Hank Anderson
b2284647a3
More complex objects.
2015-02-23 07:51:05 -06:00
Hank Anderson
a6116e5859
Added some more complex-only objects.
2015-02-22 17:49:28 -06:00
Hank Anderson
714638c187
Added some TRMM objects for complex types.
2015-02-19 16:11:51 -06:00
Hank Anderson
e27c372e53
Fixed reuse of float_char from parent loop.
...
Fixed in/it/on/otcopy names.
2015-02-19 13:53:29 -06:00
Hank Anderson
f3f2b3d768
Added complex and single netlib-lapack fortran sources to lapack.cmake.
2015-02-19 12:26:11 -06:00
Hank Anderson
9492298048
Added other float types to Makefile.L3.
2015-02-18 13:01:05 -06:00
Hank Anderson
14fd3d35de
Added checks for missing defines in kernel.
2015-02-18 10:25:01 -06:00
Hank Anderson
cebc07cebd
ParseMakefileVars now recursively parses included makefiles.
2015-02-17 22:09:41 -06:00
Hank Anderson
33c5e8db7f
Added a helper function for setting the L1 kernel defaults.
...
Added loop to build objects with different KERNEL defines.
2015-02-17 21:36:23 -06:00
Martin Koehler
39cc6b21d3
Add ATLAS-style ?geadd function
2015-02-16 13:46:20 +01:00
Hank Anderson
4662a0b13a
Changed generate functions to iterate through a list of float types.
...
This will generate obj files for SINGLE/DOUBLE/COMPLEX/DOUBLE COMPLEX.
2015-02-15 17:44:37 -06:00
Hank Anderson
162791e30e
Added common objects from kernel Makefile.
2015-02-10 12:42:05 -06:00
Hank Anderson
c0624a26be
Fixed some dgemm_copy function names.
2015-02-09 14:34:29 -06:00
Hank Anderson
4bfaf1ce66
Removed some list appends I missed.
2015-02-09 12:56:55 -06:00
Hank Anderson
e8c39138c6
Removed return value from GenerateNamedObjects.
...
It sets DBLAS_OBJS directly to save a bunch of list appending in the
CMakeLists.txt files.
2015-02-09 12:28:09 -06:00
Hank Anderson
f992799226
Added the rest of Makefile.L3.
2015-02-09 10:47:35 -06:00
Hank Anderson
4c65afcce1
Changed kernel filenames to vars. These will need to be read from KERNEL.
...
Added some kernel/L3 objects.
2015-02-09 09:52:14 -06:00
Hank Anderson
7fa5c4e2fd
Fixed some case issues with ARCH.
...
Added some kernel and driver/others objects.
2015-02-08 15:29:18 -06:00
Hank Anderson
fa0e6a6c93
Added the rest of the L1 kernel makefile.
2015-02-07 21:37:46 -06:00
Hank Anderson
38681fb1c6
Added more kernel files.
2015-02-07 12:54:30 -06:00
Hank Anderson
189fadfde0
Started implementing kernel/Makefile in cmake.
2015-02-05 21:05:11 -06:00
Zhang Xianyi
229ce2ccd1
Add cortex-a9 and cortex-a15 targets.
2015-01-12 08:55:29 +00:00
Zhang Xianyi
41aad0407f
Merge pull request #482 from jeromerobert/develop
...
Allow to do gemv and ger buffer allocation on the stack
2015-01-02 02:26:17 +08:00
Werner Saar
ddf983d643
added optimizations for steamroller
2014-12-30 20:14:45 +08:00
Werner Saar
4319769b79
added target processor STEAMROLLER
2014-12-28 20:16:46 +08:00
Jerome Robert
e9d9a8eae3
Allow to do gemv and ger buffer allocation on the stack
...
ger and gemv call blas_memory_alloc/free which in their turn
call blas_lock. blas_lock create thread contention when matrices
are small and the number of thread is high enough. We avoid
call blas_memory_alloc by replacing it with stack allocation.
This can be enabled with:
make -DMAX_STACK_ALLOC=2048
The given size (in byte) must be high enough to avoid thread contention
and small enough to avoid stack overflow.
Fix #478
2014-12-27 14:33:12 +01:00
Werner Saar
587e16fba3
Ref #458 : Backport, sandybrigde uses nehalem zgemm kernel
2014-12-22 17:01:18 +01:00
Werner Saar
6261342de3
small optimization on dgemm_kernel for N=1
2014-12-18 20:35:51 +01:00
Werner Saar
bc5fff7085
changed inline assembler labels to short form
2014-12-07 12:38:54 +01:00
Zhang Xianyi
0cf29ba6d2
Fixed a bug of sgemm sandy bridge kernel.
...
Reported by Julia project. JuliaLang/julia#9084
2014-12-03 17:38:41 +08:00
Zhang Xianyi
2fb02626da
Update organization info.
2014-11-25 15:28:58 +08:00
Zhang Xianyi
a85c2785ae
Refs #467 . Added generic kernel file for x86_64.
2014-11-24 15:34:48 +08:00
Benedikt Huber
58c90d5937
# The first commit's message is:
...
Optimizations for APM's xgene-1 (aarch64).
1) general system updates to support armv8 better. Make all did not work, one needed to supply TARGET=ARMV8.
2) sgem 4x4 kernel in assembler using SIMD, and configuration changes to use it.
3) strmm 4x4 kernel in C. Since the sgem kernel does 4x4, the trmm kernel must also do 4xN.
Added Dave Nuechterlein to the contributors list.
2014-11-11 22:19:23 +08:00
wernsaar
7aae4a62e7
enabled use of GEMM3M functions
2014-09-20 14:27:10 +02:00
wernsaar
b7c9566eea
removed obsolete gemv kernel files
2014-09-14 11:00:53 +02:00
wernsaar
6df1b0be81
optimized zgemv_n_microk_sandy-4.c
2014-09-14 10:21:22 +02:00
wernsaar
2ac1e076c1
added optimized zgemv_n kernel for sandybridge
2014-09-14 09:02:05 +02:00
wernsaar
9908b6031c
bugfix in KERNEL.PILEDRIVER
2014-09-13 16:26:53 +02:00
wernsaar
8f100a14f2
optimized cgemv_t kernel for haswell
2014-09-13 16:13:27 +02:00
wernsaar
53b5726b04
added optimized cgemv_t kernel for haswell
2014-09-13 15:14:12 +02:00
wernsaar
1a352b24e6
updated KERNEL.HASWELL
2014-09-13 12:23:27 +02:00
wernsaar
5194818d4b
updated zgemv_t_4.c
2014-09-13 09:48:34 +02:00
wernsaar
8a39cdb1c1
added optimized zgemv_t kernel for haswell
2014-09-13 09:47:07 +02:00
wernsaar
0a1390f2d8
enabled optimized zgemv_t kernel for bulldozer
2014-09-12 17:43:47 +02:00
wernsaar
a8b0812feb
optimized zgemv_t for bulldozer
2014-09-12 17:42:25 +02:00
wernsaar
a0fb68ab42
added optimized zgemv_t kernel for bulldozer
2014-09-12 17:04:22 +02:00
wernsaar
44c11165d5
bugfix in cgemv_t_4.c
2014-09-12 14:12:24 +02:00
wernsaar
564be4eb72
added optimized cgemv_t kernel
2014-09-12 13:38:01 +02:00
wernsaar
107c3ea7d5
added optimized zgemv_t routine
2014-09-12 12:35:20 +02:00
wernsaar
bb8d698335
optimized zgemv_n_microk_haswell-4.c for small size
2014-09-11 13:44:55 +02:00
wernsaar
e0192a6914
bugfix in zgemv_n_4.c
2014-09-11 13:18:00 +02:00
wernsaar
bced4594bb
added optimized zgemv_n kernel
2014-09-11 12:34:57 +02:00
wernsaar
cafba99b6b
bufix in cgemv_n_microk_haswell-4.c
2014-09-11 11:12:44 +02:00
wernsaar
ac8f232b2a
more optimizations
2014-09-11 10:25:48 +02:00
wernsaar
f98e1244c4
optimized cgemv_n_4.c
2014-09-10 19:26:14 +02:00
wernsaar
be95700b30
added optimized cgemv_kernel for haswell
2014-09-10 14:11:24 +02:00
wernsaar
4aa534ae93
added cgemv_n kernel, optimized for small sizes
2014-09-10 13:45:13 +02:00
wernsaar
baa46e4fba
added and tested optimized dgemv_n kernel for haswell
2014-09-09 16:17:45 +02:00
wernsaar
faab7a181d
added optimized dgemv_n kernel for haswell
2014-09-09 15:32:32 +02:00
wernsaar
8109d8232c
optimized dgemv_t kernel for haswell
2014-09-09 14:38:08 +02:00
wernsaar
debc6d1a05
bugfix in KERNEL.HASWELL
2014-09-09 14:04:44 +02:00
wernsaar
e73a0113ec
added optimized gemv kernels
2014-09-09 13:54:55 +02:00
wernsaar
44f2bf9bae
added optimized dgemv_t kernel for haswell
2014-09-09 13:34:22 +02:00
wernsaar
cd34e9701b
removed obsolete files
2014-09-08 19:15:31 +02:00
wernsaar
658939faaa
optimized dgemv_n kernel for small sizes
2014-09-08 15:22:35 +02:00
wernsaar
c4d9d4e5f8
added haswell optimized kernel
2014-09-08 12:25:16 +02:00
wernsaar
7c0a94ff47
bugfix in sgemv_n_microk_haswell-4.c
2014-09-08 10:54:33 +02:00
wernsaar
cbbc80aad3
added optimized sgemv_t kernel for haswell
2014-09-08 10:13:39 +02:00
wernsaar
2be5c7a640
bugfix for windows
2014-09-07 21:48:42 +02:00
wernsaar
80f7786875
enabled optimized sgemv kernels for piledriver
2014-09-07 21:13:57 +02:00
wernsaar
553e275407
optimized sgemv_n kernel for sandybridge
2014-09-07 20:53:30 +02:00
wernsaar
7b3932b3f3
optimized sgemv_n kernel for nehalem
2014-09-07 19:20:08 +02:00
wernsaar
75207b1148
optimized sgemv_n for very small size of m
2014-09-07 18:23:48 +02:00
wernsaar
274828fa50
optimizations for very small sizes
2014-09-07 13:45:03 +02:00
wernsaar
5ae1731fe6
better optimzations for sgemv_t kernel
2014-09-06 21:28:57 +02:00
wernsaar
c8eaf3ae2d
optimized sgemv_t_4 kernel for very small sizes
2014-09-06 19:41:57 +02:00
wernsaar
3a7ab47ee9
optimized sgemv_t
2014-09-06 18:34:25 +02:00
wernsaar
cf5544b417
optimization for small size
2014-09-06 13:17:56 +02:00
wernsaar
d143f84dd2
added optimized sgemv_n kernel for haswell
2014-09-06 12:08:48 +02:00
wernsaar
a64fe9bcc9
added optimized sgemv_n kernel for sandybridge
2014-09-06 08:41:53 +02:00
wernsaar
6df7a88930
optimized sgemv_t for sandybridge
2014-09-05 10:22:50 +02:00
wernsaar
53de943690
bugfix for sgemv_n_4.c
2014-09-04 18:55:52 +02:00
wernsaar
7f910010a0
optimized sgemv_n kernel for small sizes
2014-09-04 13:09:27 +02:00
wernsaar
3a5d8dbff9
optimized sgemv_n_4.c
2014-09-03 15:34:30 +02:00
wernsaar
2a60c6d4b0
optimized sgemv_n for small sizes
2014-09-03 14:48:45 +02:00
wernsaar
0fc560ba23
bugfix for buffer overflow
2014-09-03 10:13:47 +02:00
wernsaar
f3b50dcf5b
removed obsolete instructions from sgemv_t_4.c
2014-09-02 13:35:41 +02:00
wernsaar
93eaba959d
optimized sgemv_t for bulldozer
2014-09-02 12:42:36 +02:00
wernsaar
9570e56965
optimized sgemv_t_4.c for small sizes
2014-09-01 15:11:37 +02:00
wernsaar
bc99faef1b
optimized sgemv_t_4.c for uneven sizes
2014-08-31 14:33:15 +02:00
wernsaar
848c0f16f7
optimized sgemv_t_4.c for small size
2014-08-31 13:23:44 +02:00
wernsaar
53e6dbf6ca
optimized sgemv_t kernel for small sizes
2014-08-30 13:36:27 +02:00
wernsaar
20cd850125
modification for clang compiler
2014-08-27 09:00:20 +02:00
wernsaar
3885eebdb8
added optimized zaxpy bulldozer kernel
2014-08-25 15:52:35 +02:00
wernsaar
ee74445155
added optimized caxpy kernel for bulldozer
2014-08-25 14:53:28 +02:00
wernsaar
9d2ace8bac
added optimized daxpy kernel for bulldozer
2014-08-24 10:57:12 +02:00
wernsaar
b55f997302
added optimized daxpy kernel for nehalem
2014-08-23 17:53:07 +02:00
wernsaar
e45c960c2c
added optimized saxpy kernel for nehalem
2014-08-23 17:15:21 +02:00
wernsaar
ac76b6267f
added optimized dgemv_n kernel for nehalem
2014-08-23 10:40:57 +02:00
wernsaar
f1b96c4846
added optimized ddot kernel for bulldozer
2014-08-22 21:19:29 +02:00
wernsaar
16d6be852d
added optimized ddot kernel for nehalem
2014-08-22 20:34:41 +02:00
wernsaar
95a707ced3
update of KERNEL.BULLDOZER
2014-08-22 17:01:27 +02:00
wernsaar
5d97b0754c
added optimized sdot kernel for nehalem
2014-08-22 17:00:26 +02:00
wernsaar
8a9e868919
added optimized sdot for bulldozer
2014-08-22 14:29:17 +02:00
wernsaar
c8b0645266
added optimized symv_L kernels for nehalem
2014-08-21 14:27:00 +02:00
wernsaar
ec05ff3f64
added optimized ssymv_L kernel for bulldozer
2014-08-21 13:32:06 +02:00
wernsaar
f6f9122660
added optimized dsymv_L kernel for bulldozer
2014-08-21 13:02:53 +02:00
wernsaar
8247f38dc1
added optimized dsymv_U kernel for nehalem
2014-08-20 09:58:04 +02:00
wernsaar
ef6374196d
updated optimized dsymv_U kernel for bulldozer
2014-08-20 09:00:56 +02:00
wernsaar
f824c2b751
updated optimized ssymv_U for bulldozer
2014-08-19 19:25:03 +02:00
wernsaar
4ba4ab623f
added optimized ssymv_U kernel for nehalem
2014-08-19 17:09:45 +02:00
wernsaar
4f39447c05
added optimized ssymv_U kernel for bulldozer
2014-08-18 13:52:24 +02:00
wernsaar
74c9465672
added optimized dsymv_U kernel for bulldozer
2014-08-18 12:18:10 +02:00
wernsaar
101dd08173
add reference in C for symv_U
2014-08-16 13:52:50 +02:00
wernsaar
493d4fe7e5
added reference in C for symv_L
2014-08-16 11:36:48 +02:00
wernsaar
11eab4c019
added optimized cgemv_n for haswell
2014-08-14 19:00:30 +02:00
wernsaar
4568d32b6b
added optimized cgemv_t kernel for haswell
2014-08-14 14:10:29 +02:00
wernsaar
c1a6374c6f
optimized zgemv_n kernel for sandybridge
2014-08-13 16:10:03 +02:00
wernsaar
2470129132
added fast return, if m or n < 1
2014-08-13 13:54:19 +02:00
wernsaar
8c582d362d
optimized zgemv_t_microk_haswell-2.c
2014-08-13 13:42:22 +02:00
wernsaar
11e34ddd1b
bugfix for zgemv_n_microk_haswell-2.c
2014-08-13 12:54:18 +02:00
wernsaar
9528f0d9ee
bugfix in zgemv_n_microk_sandy-2.c
2014-08-13 12:18:03 +02:00
wernsaar
b06550519e
added optimized cgemv_t c-kernel
2014-08-12 12:15:41 +02:00
wernsaar
6093ee5363
bugfix in zgemv_n_microk_haswell-2.c
2014-08-12 10:02:25 +02:00
wernsaar
07c66b1960
modified algorithm for better numerical stability
2014-08-12 08:35:42 +02:00
wernsaar
58b075daef
added optimized zgemv_t kernel for haswell
2014-08-11 16:57:52 +02:00
wernsaar
09fcd3a341
add optimized zgemv_t kernel for bulldozer
2014-08-11 14:19:25 +02:00
wernsaar
726ad085cb
added optimized zgemv_t for haswell
2014-08-11 13:10:12 +02:00
wernsaar
6fe416976d
added optimimized zgemv_t c-kernel
2014-08-11 09:13:18 +02:00
wernsaar
dbc2eff029
disabled optimized haswell zgemv_n kernel for windows ( bad rounding )
2014-08-10 11:57:24 +02:00
wernsaar
462b4885ff
added optimized zgemv_n kernel for haswell
2014-08-10 08:39:17 +02:00
wernsaar
aa54fe064c
added zgemv_n c-function
2014-08-07 22:30:20 +02:00
wernsaar
006ef3ea01
added optimized dgemv_t kernel for haswell
2014-08-07 10:08:54 +02:00
wernsaar
60f17628cc
added optimized dgemv_n kernel for haswell
2014-08-07 09:18:02 +02:00
wernsaar
c9bad1403a
added optimized sgemv_t kernel for sandybridge
2014-08-07 07:49:33 +02:00
wernsaar
2f8927376f
enabled optimized nehalem sgemv_t kernel for windows
2014-08-06 16:58:21 +02:00
wernsaar
d945a2b06d
added optimized sgemv_t kernel for nehalem
2014-08-06 16:21:48 +02:00
wernsaar
ca6c8d06ce
enabled optimized sgemv kernels for windows
2014-08-06 14:24:36 +02:00
wernsaar
7aa43c8928
enabled optimized sgemv kernels for windows
2014-08-06 14:06:30 +02:00
wernsaar
891b960854
added optimized sgemv_t kernel for haswell
2014-08-06 13:42:41 +02:00
wernsaar
95a8caa2f3
added optimized sgemv_t kernel
2014-08-06 12:12:17 +02:00
wernsaar
8c05b8105b
bugfix in sgemv_n.c
2014-08-05 20:14:29 +02:00
wernsaar
c80084a98f
changed default x86_64 sgemv_n kernel to sgemv_n.c
2014-08-05 19:42:56 +02:00
wernsaar
2bab92961f
enabled optimized sgemv_n kernels for windows
2014-08-05 14:52:54 +02:00
wernsaar
9175b8bd5f
changed long to blaslong for windows compatibility
2014-08-05 13:28:39 +02:00
wernsaar
793f2d43b0
added optimized sgemv_n kernel for nehalem
2014-08-05 10:50:08 +02:00
wernsaar
a4dde45f87
optimized sgemv_n kernel for sandybridge
2014-08-05 08:53:09 +02:00
wernsaar
7fa7ea3e1e
updated haswell optimized sgmv_n kernel
2014-08-05 08:04:47 +02:00
wernsaar
3fbc13eb65
modified sgemv_n for haswell
2014-08-04 16:22:11 +02:00
wernsaar
db6917303f
added a better optimized sgemv_n kernel for bulldozer and piledriver
2014-08-04 14:29:01 +02:00
wernsaar
5087096711
optimization of sandybridge cgemm-kernel
2014-07-29 19:07:21 +02:00
wernsaar
46bc4fd50c
optimized cgemm kernel for haswell
2014-07-29 08:53:09 +02:00
wernsaar
1cc02b4337
optimized sgemm kernel for haswell
2014-07-28 11:50:01 +02:00
wernsaar
1d33547222
optimized zgemm kernel for haswell
2014-07-27 11:51:42 +02:00
wernsaar
125610d23b
allow to set custom value for ?GEMM_DEFAULT_UNROLL_MN, optimizations for syrk
2014-07-24 18:43:31 +02:00
wernsaar
6acbafe45b
added sgemv_n microkernel for haswell
2014-07-20 14:52:25 +02:00
wernsaar
5392d11b04
optimized sgemv_n_microk_sandy.c
2014-07-20 14:08:04 +02:00
wernsaar
c0fe95fb72
added sgemv_n microkernel for sandybridge
2014-07-20 13:17:47 +02:00
wernsaar
d9d4077c93
added sgemv_t microkernel for haswell
2014-07-20 11:30:32 +02:00
wernsaar
02eb72ac42
bugfix in sgemv_t_microk_sandy.c
2014-07-20 10:48:41 +02:00
wernsaar
c06f9986d4
added sgemv_t microkernel for sandybridge
2014-07-20 10:21:08 +02:00
wernsaar
2cce125c79
added optimized sgemv_t for bulldozer and piledriver
2014-07-19 15:48:07 +02:00
wernsaar
b3938fe371
don't use this sgemv_n on Windows
2014-07-19 07:15:34 +02:00
wernsaar
c8a4a56177
performance optimizations for sgemv_n
2014-07-18 11:25:21 +02:00
wernsaar
3c5732615d
added blocked sgemv_n and microkernel for bulldozer and piledriver
2014-07-17 23:15:07 +02:00
wernsaar
880597b301
segment violation in sgemv kernels
2014-07-13 10:46:14 +02:00
wernsaar
0884b73c69
Lapack-test Windows 32bit now error free
2014-07-10 11:01:47 +02:00
wernsaar
9bd9472ae9
Lapack-test: cleanup of x86 32bit KERNEL file
2014-07-09 16:08:19 +02:00
wernsaar
c4a423a642
bugfixes for lapack on ARM Platform
2014-07-09 12:21:39 +02:00
wernsaar
13348b2137
removed reference to daxpy_bulldozer kernel (Windows bug in lapack-test)
2014-07-06 16:39:32 +02:00
wernsaar
9964ed2f79
bugfix for CORE2
2014-07-06 11:47:28 +02:00
wernsaar
d5b976f92d
fallback to zgemm_kernel_4x2_sse.S
2014-07-06 11:05:28 +02:00
wernsaar
f7267d9b0e
added missing definition for DUNNINGTON
2014-07-06 10:17:07 +02:00
wernsaar
e0c080a28c
removed reference to zgemm_kernel_4x2_sse3.S (bug in lapack-test)
2014-07-05 16:13:17 +02:00
wernsaar
e80b144932
enabled compiling of *3M functions
2014-07-02 14:11:53 +02:00
wernsaar
be94db096c
disabled *3M functions for x86_64 platforms
2014-07-01 16:18:05 +02:00
wernsaar
b079df9ef4
added optimized sdot- and dsdot-kernel, written in C
2014-06-30 14:46:38 +02:00
wernsaar
01a119abfc
enabled SMP for sbmv and zsbmv, but only for 64bit binaries
2014-06-29 20:35:56 +02:00
Zhang Xianyi
99efbbbad5
Fixed #395 . Enable optimized cgemm for Sandybridge. Added optimized sdot kernel.
...
Fixed c/zgemm, zgemv computational error of haswell, piledriver, bullldozer, and
barcelona on Windows.
Merge branch 'develop' of https://github.com/wernsaar/OpenBLAS into wernsaar-develop
Conflicts:
kernel/Makefile.L1
kernel/x86_64/KERNEL
param.h
2014-06-29 10:34:51 +08:00
wernsaar
22e5aee2dd
fixed zgemv bug for older AMD Processors
2014-06-28 19:04:49 +02:00
wernsaar
35d37e124f
bugfix for barcelona zgemv-kernel
2014-06-28 12:36:11 +02:00
wernsaar
d8ba46efdb
bugfix for bulldozer cgemm-, zgemm- and zgemv-kernel
2014-06-28 12:16:20 +02:00
wernsaar
a15f22a1f6
bugfix for piledriver cgemm-, zgemm- and zgemv-kernel
2014-06-28 11:46:58 +02:00
wernsaar
b94ea89f52
bugfix for haswell cgemm- and zgemm-kernel
2014-06-28 10:22:40 +02:00
wernsaar
35f668bb14
bugfix for cgemm_kernel_8x2_sandy.S
2014-06-28 10:01:56 +02:00
Timothy Gu
6c2ead30f0
Remove all trailing whitespace except lapack-netlib
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
2014-06-27 12:05:18 -07:00
wernsaar
365e8de346
added optimized cgemm-kernel for SANDYBRIDGE
2014-06-27 13:40:29 +02:00
wernsaar
578d1b6219
added DSDOT definition and enabled optimized sdot kernel
2014-06-27 11:30:29 +02:00
wernsaar
dabab2b5f4
added new optimized sgemm kernel for SANDYBRIGE
2014-06-26 21:42:08 +02:00
wernsaar
aa2709c4e0
enabled optimized dgemm kernel for NEHALEM
2014-06-26 12:22:29 +02:00
wernsaar
a13bcc1716
enabled optimized sgemv kernel for barcelona and piledriver
2014-06-25 13:50:57 +02:00
wernsaar
d2c82d7543
enabled optimized sgemv kernel for HASWELL
2014-06-25 12:56:45 +02:00
wernsaar
0517672dd0
enabled optimized sgemv kernels for nehalem, sandybridge and bulldozer
2014-06-25 12:38:14 +02:00
wernsaar
23203d52c1
Ref #380 : lowered stack usage for haswell kernels
2014-06-19 14:31:52 +02:00
wernsaar
73545a79cd
Ref #380 : lowered stack usage for piledriver and bulldozer kernels
2014-06-19 14:02:14 +02:00
wernsaar
ff9cfca24c
Ref #385 : added missing return instruction
2014-06-12 15:52:14 +02:00
wernsaar
cee257f384
Ref #51 : added blas extensions zomatcopy and comatcopy
2014-06-10 10:34:54 +02:00
wernsaar
7bfb3011e8
Ref #51 : added blas extension somatcopy
2014-06-09 20:21:13 +02:00
wernsaar
8c8f596238
Ref #51 : added blas extension domatcopy as not opimized reference
2014-06-09 17:11:07 +02:00
wernsaar
faf3ac0aad
Ref #285 : added axpby kernels
2014-06-08 11:54:24 +02:00
Zhang Xianyi
406f5bd22b
Merge branch 'develop' of https://github.com/wernsaar/OpenBLAS into wernsaar-develop
...
Conflicts:
kernel/arm/KERNEL.ARMV6
2014-05-21 11:24:39 +08:00
wernsaar
aaddb05411
bugfix for ARMV6
2014-05-17 13:00:36 +02:00
wernsaar
e826a5a6af
some modifications regarding lapack test
2014-05-16 20:37:41 +02:00
wernsaar
c38379c9dd
bugfixes for ARM regarding lapack tests
2014-05-14 13:03:45 +02:00
wernsaar
a0b07c1440
bugfixs for ARM regarding lapack tests
2014-05-14 12:59:20 +02:00
wernsaar
43fbdb7a5a
added ARMV5 as reference platform
2014-05-13 17:25:19 +02:00
wernsaar
777cebc8c7
added ZERO check to zscal.c because bug in lapack-testing
2014-05-13 16:31:00 +02:00
wernsaar
aa5c73e20f
added ZERO check to zscal.c because bug in lapack-test
2014-05-13 16:25:21 +02:00
wernsaar
5e5ef28ca0
added ZERO check because bug in lapack-test
2014-05-13 15:36:03 +02:00
wernsaar
650ed34336
added ZERO check because bug in lapack-test
2014-05-13 15:31:36 +02:00
wernsaar
5f3b68b4d4
replaced sgemm and cgemm kernels because lapack bugs
2014-05-10 11:24:07 +02:00
wernsaar
2424af62fd
replaced dgemm-kernel because bug in lapack
2014-05-10 10:52:37 +02:00
wernsaar
793509a3b5
replaced files for sdot, sgemv_n and sgemv_t for bug #348
2014-05-06 15:29:39 +02:00
wernsaar
47b22763f8
reduced stack usage on windows to 16K
2014-04-24 14:09:26 +02:00
wernsaar
9db0fb8b02
bugfix for sdsdot
2014-02-28 14:59:36 +01:00
wernsaar
f9daebba0a
checked in bugfixes for ARM
2014-02-16 11:45:47 +01:00
Zhang Xianyi
9a557e90da
Refs #340 . Fixed SEGFAULT bug of dgemv_n on OSX.
2014-02-15 23:23:15 +08:00
wangqian
2d557eb1e0
Fixed computational error of dgemv_n.
2014-02-04 21:47:51 +08:00
Zhang Xianyi
05bb391c3a
Refs #330 . Fixed the compatible issue with clang on Mac OSX.
2013-12-16 20:31:17 +08:00
Zhang Xianyi
9b5be29886
Refs #310 . Fixed Segfault bug on nehalem when Julia calling dgeqrt3 on OSX.
...
Please also check JuliaLang/julia#4099
Julia test script:
A=rand(256, 256)
qrfact(A)
I found this was a bug in kernel/x86_64/dgemm_ncopy_8.S.
However, I cannot use gdb with julia. Thus, this is a walkaround fix.
2013-12-12 23:23:04 +08:00
wernsaar
53eaf41901
added support for HASWELL
2013-12-02 13:17:51 +01:00
wernsaar
9423f980f6
modified trsm kernel
2013-12-02 10:08:14 +01:00
wernsaar
c6156b2ef2
added trsm kernels from origin
2013-12-01 22:39:39 +01:00
wernsaar
034a5b2083
modified zsymv
2013-12-01 21:07:49 +01:00
wernsaar
27d4234d4d
merged symv
2013-12-01 20:56:02 +01:00
wernsaar
402d6e91db
Merge remote branch 'origin/develop' into armv7
2013-12-01 18:18:40 +01:00
wernsaar
b3254eecaf
Merge remote branch 'origin/haswell' into develop
2013-12-01 18:09:12 +01:00
wernsaar
d910404f00
Merge remote branch 'origin/piledriver' into develop
2013-12-01 18:06:51 +01:00
wernsaar
ffe70b1fdc
modified Makefile.L3
2013-12-01 17:58:46 +01:00
wernsaar
0b6e13b689
Merge remote branch 'origin/develop' into haswell
2013-12-01 13:38:11 +01:00
wernsaar
e09dc279a2
Merge remote branch 'origin/develop' into piledriver
2013-12-01 13:33:18 +01:00
wernsaar
4be4db590c
Merge remote branch 'origin/develop' into armv7
2013-12-01 13:16:41 +01:00
wernsaar
5c648a8984
Merge remote branch 'origin/develop' into haswell
2013-12-01 11:25:33 +01:00
wernsaar
c44dc4dd3c
Merge remote branch 'origin/develop' into piledriver
2013-12-01 11:06:36 +01:00
wernsaar
9d3fae15a8
Merge branch 'develop' into armv7
2013-12-01 10:12:07 +01:00
wernsaar
2d3c884294
added complex gemv kernels for ARMV6 and ARMV7
2013-11-29 17:06:33 +01:00
wernsaar
d54a061713
optimized gemv_n_vfp.S
2013-11-28 17:40:21 +01:00
wernsaar
86afb47e83
added optimized ctrmm kernel for ARMV6
2013-11-28 14:35:07 +01:00
wernsaar
42a4dff056
added optimized ztrmm kernel for ARMV6
2013-11-28 13:41:06 +01:00
wernsaar
5bc322a66c
optimized strmm kernel for ARMV6
2013-11-28 12:45:38 +01:00
wernsaar
dec7ad0dfd
optimized dtrmm kernel for ARMV7
2013-11-28 12:32:12 +01:00
wernsaar
274304bd03
add optimized cgemm kernel for ARMV6
2013-11-28 11:54:38 +01:00
wernsaar
5007a534c4
optimized zgemm kernel for ARMV6
2013-11-28 10:04:43 +01:00
wernsaar
a537d7d8d7
optimized zgemm_kernel_2x2_vfp.S
2013-11-28 08:33:44 +01:00
wernsaar
b42145834f
optimized sgemm kernel for ARMV6
2013-11-28 08:08:08 +01:00
wernsaar
3d5e792c72
optimized sgemm kernel for ARMV6
2013-11-27 18:38:32 +01:00
wernsaar
a9bd12da2c
optimized dgemm kernel for ARMV6
2013-11-27 17:37:38 +01:00
wernsaar
697e198e8a
added zgemm_kernel for ARMV6
2013-11-27 16:15:06 +01:00
wernsaar
36b0f7fe1d
added optimized gemv_t kernel for ARMV6
2013-11-25 19:31:27 +01:00
wernsaar
d2b20c5c51
add optimized axpy kernel
2013-11-25 12:25:58 +01:00
wernsaar
fe5f46c330
added experimental support for ARMV8
2013-11-24 15:47:00 +01:00
wernsaar
25c6050593
add single and double precision gemv_n kernel for ARMV6
2013-11-24 12:03:28 +01:00
wernsaar
12e02a00e0
added ncopy kernels for ARMV6
2013-11-24 08:46:47 +01:00
wernsaar
29a3196f56
added optimized sgemm and strmm kernel for ARMV6
2013-11-23 18:09:41 +01:00
wernsaar
8776a73773
added optimized dgemm and dtrmm kernel for ARMV6
2013-11-23 16:24:52 +01:00
wernsaar
7e84acd3e8
fixed bug in SAVE macros, that are not found by any test routine
2013-11-23 14:35:19 +01:00
wernsaar
33d3ab6e09
small optimizations for zgemv kernels
2013-11-23 12:35:31 +01:00
wernsaar
9a0f978929
added nrm2 kernel for ARMV6
2013-11-22 17:21:10 +01:00
wernsaar
7f210587f0
renamed some ncopy and tcopy files
2013-11-22 00:20:25 +01:00
wernsaar
9f0a3a35b3
removed obsolete file sdot_vfpv3.S
2013-11-21 23:42:54 +01:00
wernsaar
dbae93110b
added sdot_vfp.S
2013-11-21 23:34:51 +01:00
wernsaar
19cd5c64a2
renamed swap_vfpv3.S to swap_vfp.S
2013-11-21 23:19:32 +01:00
wernsaar
9adf87495e
renamed some dot kernels
2013-11-21 23:07:51 +01:00
wernsaar
440db4cdda
delete rot_vfpv3.S
2013-11-21 22:52:24 +01:00
wernsaar
cd93cae5a7
renamed rot_vfpv3.S to rot_vfp.S
2013-11-21 22:49:28 +01:00
wernsaar
8565afb3c2
renamed asum_vfpv3.S to asum_vfp.S
2013-11-21 22:26:27 +01:00
wernsaar
5bf7cf8d67
renamed scal_vfpv3.S to scal_vfp.S
2013-11-21 22:03:36 +01:00
wernsaar
29a005c635
renamed iamax assembler kernel
2013-11-21 21:12:33 +01:00
wernsaar
f1be3a168a
renamed some BLAS kernels, which are compatible to ARMV6
2013-11-21 20:48:57 +01:00
wernsaar
410afda9b4
added cpu detection and target ARMV6, used in raspberry pi
2013-11-21 20:18:51 +01:00
wernsaar
bf04544902
added gemv_n kernel for single and double precision
2013-11-19 15:07:20 +01:00
wernsaar
86283c0be1
added gemv_t kernel for single and double precision
2013-11-19 09:55:54 +01:00
wernsaar
f27cabfd08
added nrm2 kernel for all precisions
2013-11-16 16:17:17 +01:00
wernsaar
23dd474cd0
added rot kernel for all precisions
2013-11-15 14:08:57 +01:00
wernsaar
f1b452e160
added scal kernel for all precisions
2013-11-15 11:56:43 +01:00
wernsaar
3dabd7e6e6
added swap-kernel for all precisions
2013-11-14 19:06:19 +01:00
wernsaar
6f4a0ebe38
added max- und min-kernels for all precisions
2013-11-14 13:52:47 +01:00
wernsaar
f1db386211
changes for compatibility with Pathscale compiler
2013-11-13 17:59:11 +01:00
wernsaar
6da558d2ab
changes for compatibility with Pathscale compiler
2013-11-13 17:39:13 +01:00
wernsaar
f750103336
small optimizations on dot-kernels
2013-11-11 15:47:56 +01:00
wernsaar
00f33c0134
added asum_kernel for all precisions and complex
2013-11-11 14:20:59 +01:00
wernsaar
5b36cc0f47
added blas level1 dot kernels for complex and double complex
2013-11-08 09:08:11 +01:00
wernsaar
c8f1aeb154
added optimized blas level1 dot kernels for single and double precision
2013-11-07 17:22:03 +01:00
wernsaar
8fa93be06e
added optimized blas level1 copy kernels
2013-11-07 17:18:56 +01:00
wernsaar
1e8128f41c
added cgemm_tcopy_2_vfpv3.S and zgemm_tcopy_2_vfpv3.S
2013-11-07 17:15:50 +01:00
Zhang Xianyi
2f5fdd2000
Refs #314 . Fixed clang compiling bug on OSX.
2013-11-07 08:12:03 +08:00
wernsaar
80a2e901b1
added dgemm_tcopy_4_vfpv3.S and sgemm_tcopy_4_vfpv3.S
2013-11-06 20:01:18 +01:00
wernsaar
ac50bccbd2
added cgemm_ncopy_2_vfpv3.S and made assembler labels unique
2013-11-05 20:21:35 +01:00
wernsaar
82015beaef
added zgemm_ncopy_2_vfpv3.S and made assembler labels unique
2013-11-05 19:31:22 +01:00
wernsaar
6216ab8a7e
removed obsolete gemm_kernels from haswell branch
2013-11-04 08:33:04 +01:00
wernsaar
370e3834a9
added missing file kernel/arm/Makefile
2013-11-03 11:54:39 +01:00
wernsaar
e31186efd4
deleted obsolete dgemm_kernel and dtrmm_kernel
2013-11-02 13:12:21 +01:00
wernsaar
2b801a00a5
small optimizations on sgemm_kernel for ARMV7
2013-11-02 13:06:11 +01:00
wernsaar
b3eab8fcb7
minor optimizations on zgemm_kernel for ARMV7
2013-11-02 09:43:53 +01:00
wernsaar
02bc36ac79
added sgemm_ncopy routine and made some improvements on cgemm_kernel for ARMV7
2013-11-01 18:22:27 +01:00
wernsaar
5118a7f4d1
small optimizations on dgemm_kernel for Piledriver
2013-10-31 11:53:26 +01:00
wernsaar
e172b70ea2
added cgemm_kernel for Piledriver
2013-10-31 08:38:17 +01:00
wernsaar
1cf4b974b2
added zgemm_kernel for Piledriver
2013-10-30 09:12:17 +01:00
wernsaar
7bccff1512
added sgemm_kernel for PILEDRIVER
2013-10-29 22:53:04 +01:00
wernsaar
afe44b0241
tests and code cleanup of gemm_kernels for HASWELL
2013-10-28 14:23:48 +01:00
wernsaar
a77c71eaf5
added highly optimized dgemm_kernel for HASWELL
2013-10-28 10:23:47 +01:00
wernsaar
fe8c5666f9
optimized dgemm_kernel for HASWELL
2013-10-20 16:52:26 +02:00
wernsaar
f6b50057e2
corrected and testet FMA3 Code
2013-10-19 10:52:20 +02:00
wernsaar
2840d56aeb
added dgemm_kernel for Piledriver
2013-10-19 09:47:15 +02:00
wernsaar
85484a42df
added kernels for cgemm, ctrmm, zgemm and ztrmm
2013-10-16 18:00:41 +02:00
wernsaar
3983011f0b
added sgemm- and strmm_kernel
2013-10-14 08:22:27 +02:00
wernsaar
2a1515c9dd
added dgemm_ncopy_4_vfpv3.S
2013-10-12 16:48:29 +02:00
wernsaar
31f51e78bc
minor optimizations on dgemm_kernel
2013-10-12 09:42:18 +02:00
wangqian
beffee7d91
Fixed buffer overflow bug in kernel/x86_64/dgemv_t.S file.
2013-10-11 03:20:20 +08:00
wernsaar
e0b968c3a7
Changed kernels for dgemm and dtrmm
2013-10-05 12:59:44 +02:00
wernsaar
1c63180bb6
updated dgemm_kernel_8x2_vfpv3.S
2013-09-30 17:31:23 +02:00
wernsaar
4a474ea7dc
changed dgemm_kernel to use fused multiply add
2013-09-29 17:46:23 +02:00
wernsaar
69ce737cc5
modified Makefile.L3 for ARM
2013-09-28 19:13:47 +02:00
wernsaar
70411af888
initial checkin of kernel/arm
2013-09-28 19:02:25 +02:00
Zhang Xianyi
6c4a7d0828
Import AMD Piledriver DGEMM kernel generated by AUGEM.
...
So far, this kernel doesn't deal with edge.
AUGEM: Automatically Generate High Performance Dense Linear Algebra
Kernels on x86 CPUs.
Qian Wang, Xianyi Zhang, Yunquan Zhang, and Qing Yi. In the
International Conference for High Performance Computing, Networking,
Storage and Analysis (SC'13). Denver, CO. Nov, 2013.
2013-08-25 10:16:01 -03:00
wernsaar
067e8417fd
removed unnessesary instructions from zgemm_kernel_2x2_bulldozer.S
2013-08-23 22:22:43 +08:00
wernsaar
a82da3d069
removed unnessesary instructions
2013-08-23 22:22:27 +08:00
Zhang Xianyi
1569bf14f8
Refs #282 . Fixed zgemv_n typo bug on Win64.
2013-08-23 16:27:17 +08:00
Zhang Xianyi
f51a849d91
Merge pull request #278 from wernsaar/haswell
...
Merge wernsaar's Haswell gemm kernels.
2013-08-17 08:24:37 -07:00
wernsaar
44ef70420c
added cgemm_kernel_8x2_haswell.S
2013-08-16 18:54:56 +02:00
wernsaar
d488b1b1aa
added zgemm_kernel_4x2_haswell.S
2013-08-16 10:29:47 +02:00
wernsaar
4070d9a123
added dgemm_kernel_16x2_haswell.S
2013-08-15 19:17:20 +02:00
wernsaar
0b90c0ec64
added sgemm_kernel_16x4_haswell.S
2013-08-15 18:46:14 +02:00
wernsaar
2b8ab8f55b
sgemm_kernel_16x4_haswell.S minor changes
2013-08-14 01:44:41 +02:00
wernsaar
1cb9579cd0
added zgemm_kernel_4x2_haswell.S and fixed a bug in sgemm_kernel_16x4_haswell.S
2013-08-14 01:23:15 +02:00
Zhang Xianyi
2638370844
Init code base for Intel Haswell.
2013-08-13 00:54:59 +08:00
wernsaar
89637f87c8
added sgemm- and dgemm-kernel for HASWELL processor
2013-08-12 18:04:10 +02:00
Zhang Xianyi
c0159d44a3
Merge branch 'develop' of https://github.com/wernsaar/OpenBLAS into wernsaar-develop
2013-08-09 10:48:46 +08:00
wernsaar
c17a850c1c
modified KERNEL.BULLDOZER
2013-08-08 17:49:30 +02:00
wernsaar
099853fff6
added dtrsm_kernel_RN_8x2_bulldozer.S
2013-08-08 07:14:08 +02:00
wernsaar
44d23881b5
dtrsm_kernel_LT_8x2_bulldozer.S performance optimization
2013-08-05 11:27:16 +02:00
Zhang Xianyi
32fb6b9bb2
Merge branch 'develop' of https://github.com/wernsaar/OpenBLAS into wernsaar-develop
2013-08-05 16:09:47 +08:00
wernsaar
aaeb8eaecd
modified dtrsm_kernel_LT_8x2_bulldozer.S
2013-08-04 12:16:12 +02:00
wernsaar
8aeec32ea0
modified dtrsm_kernel_LT_8x2_bulldozer.S
2013-08-04 10:15:33 +02:00
wernsaar
87fc9de572
added dtrsm_kernel_LT_8x2_bulldozer.S
2013-08-04 09:54:40 +02:00
wernsaar
564aa60fec
removed dtrsm_kernel_LT_8x2_bulldozer.S
2013-08-03 15:40:51 +02:00
wernsaar
f645665dd6
fixed bug in dgemv_t_bulldozer.S
2013-08-03 12:19:29 +02:00
wernsaar
e45a347cd2
repaired trmm bug in sgemm_kernel_16x2_bulldozer.S
2013-08-03 11:43:25 +02:00
wernsaar
99727ac013
repaired trmm bug in cgemm_kernel_4x2_bulldozer.S
2013-08-03 10:32:51 +02:00
wernsaar
6e0a2fbc0c
repaired trmm bug in zgemm_kernel_2x2_bulldozer.S
2013-08-03 10:17:08 +02:00