Browse Source

Optimized zgemm kernel for CORTEXA57

pull/686/head
Ashwin Sekhar T K 10 years ago
parent
commit
bc4e96311b
3 changed files with 1630 additions and 5 deletions
  1. +8
    -0
      kernel/arm64/KERNEL.CORTEXA57
  2. +1617
    -0
      kernel/arm64/zgemm_kernel_4x4.S
  3. +5
    -5
      param.h

+ 8
- 0
kernel/arm64/KERNEL.CORTEXA57 View File

@@ -63,6 +63,7 @@ ZGEMVTKERNEL = zgemv_t.S
STRMMKERNEL = ../generic/trmmkernel_4x4.c
DTRMMKERNEL = ../generic/trmmkernel_4x4.c
CTRMMKERNEL = ../generic/ztrmmkernel_4x4.c
ZTRMMKERNEL = ../generic/ztrmmkernel_4x4.c

SGEMMKERNEL = sgemm_kernel_4x4.S
SGEMMONCOPY = ../generic/gemm_ncopy_4.c
@@ -81,3 +82,10 @@ CGEMMONCOPY = ../generic/zgemm_ncopy_4.c
CGEMMOTCOPY = ../generic/zgemm_tcopy_4.c
CGEMMONCOPYOBJ = cgemm_oncopy.o
CGEMMOTCOPYOBJ = cgemm_otcopy.o

ZGEMMKERNEL = zgemm_kernel_4x4.S
ZGEMMONCOPY = ../generic/zgemm_ncopy_4.c
ZGEMMOTCOPY = ../generic/zgemm_tcopy_4.c
ZGEMMONCOPYOBJ = zgemm_oncopy.o
ZGEMMOTCOPYOBJ = zgemm_otcopy.o


+ 1617
- 0
kernel/arm64/zgemm_kernel_4x4.S
File diff suppressed because it is too large
View File


+ 5
- 5
param.h View File

@@ -2235,23 +2235,23 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define CGEMM_DEFAULT_UNROLL_M 4
#define CGEMM_DEFAULT_UNROLL_N 4

#define ZGEMM_DEFAULT_UNROLL_M 2
#define ZGEMM_DEFAULT_UNROLL_N 2
#define ZGEMM_DEFAULT_UNROLL_M 4
#define ZGEMM_DEFAULT_UNROLL_N 4

#define SGEMM_DEFAULT_P 128
#define DGEMM_DEFAULT_P 256
#define CGEMM_DEFAULT_P 256
#define ZGEMM_DEFAULT_P 64
#define ZGEMM_DEFAULT_P 128

#define SGEMM_DEFAULT_Q 240
#define DGEMM_DEFAULT_Q 1024
#define CGEMM_DEFAULT_Q 1024
#define ZGEMM_DEFAULT_Q 120
#define ZGEMM_DEFAULT_Q 512

#define SGEMM_DEFAULT_R 12288
#define DGEMM_DEFAULT_R 4096
#define CGEMM_DEFAULT_R 4096
#define ZGEMM_DEFAULT_R 4096
#define ZGEMM_DEFAULT_R 2048


#define SYMV_P 16


Loading…
Cancel
Save