[WIP] Refactor the driver code for direct SGEMM (#2782)
authorMartin Kroeker <martin@ruby.chemie.uni-freiburg.de>
Wed, 19 Aug 2020 12:51:09 +0000 (14:51 +0200)
committerGitHub <noreply@github.com>
Wed, 19 Aug 2020 12:51:09 +0000 (14:51 +0200)
commit75eeb265d7c5715f05b63e8706593ef6d8485627
tree4796b4496148be6edf707c2780ae18088c2c9282
parent2c7297257068b3cb1ff93638debf43f4da44a29c
[WIP] Refactor the driver code for direct SGEMM (#2782)

Move "direct SGEMM" functionality out of the SkylakeX SGEMM kernel and make it available
(on x86_64 targets only for now) in DYNAMIC_ARCH builds
* Add  sgemm_direct targets in the kernel Makefile.L3 and CMakeLists.txt
* Add direct_sgemm functions to the gotoblas struct in common_param.h
* Move sgemm_direct_performant helper to separate file
* Update gemm.c  to macros for sgemm_direct to support dynamic_arch naming via common_s,h
* (Conditionally) add sgemm_direct functions in setparam-ref.c
common_level3.h
common_param.h
common_s.h
interface/gemm.c
kernel/CMakeLists.txt
kernel/Makefile.L3
kernel/setparam-ref.c
kernel/x86_64/sgemm_direct_performant.c [new file with mode: 0644]
kernel/x86_64/sgemm_direct_skylakex.c
kernel/x86_64/sgemm_kernel_16x4_skylakex_3.c