Skip to content

Commit d50abc8

Browse files
author
Ashwin Sekhar T K
committed
ARM64: Move parameters from parameter.c to param.h
Remove the runtime setting of P, Q, R parameters for targets ARMV8, THUNDERX2T99. Instead set them as constants in param.h at compile time.
1 parent 351a0c7 commit d50abc8

File tree

3 files changed

+27
-58
lines changed

3 files changed

+27
-58
lines changed

driver/others/parameter.c

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -730,35 +730,8 @@ void blas_set_parameter(void){
730730

731731
#if defined(ARCH_ARM64)
732732

733-
#if defined(VULCAN) || defined(THUNDERX2T99) || defined(ARMV8)
734-
unsigned long dgemm_prefetch_size_a;
735-
unsigned long dgemm_prefetch_size_b;
736-
unsigned long dgemm_prefetch_size_c;
737-
#endif
738-
739733
void blas_set_parameter(void)
740734
{
741-
#if defined(VULCAN) || defined(THUNDERX2T99) || defined(ARMV8)
742-
dgemm_p = 160;
743-
dgemm_q = 128;
744-
dgemm_r = 4096;
745-
746-
sgemm_p = 128;
747-
sgemm_q = 352;
748-
sgemm_r = 4096;
749-
750-
cgemm_p = 128;
751-
cgemm_q = 224;
752-
cgemm_r = 4096;
753-
754-
zgemm_p = 128;
755-
zgemm_q = 112;
756-
zgemm_r = 4096;
757-
758-
dgemm_prefetch_size_a = 3584;
759-
dgemm_prefetch_size_b = 512;
760-
dgemm_prefetch_size_c = 128;
761-
#endif
762735
}
763736

764737
#endif

kernel/arm64/dgemm_kernel_8x4_thunderx2t99.S

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -943,13 +943,9 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
943943
prfm PLDL1KEEP, [origPB]
944944
prfm PLDL1KEEP, [origPA]
945945

946-
947-
ldr A_PRE_SIZE, =dgemm_prefetch_size_a
948-
ldr A_PRE_SIZE, [A_PRE_SIZE]
949-
ldr B_PRE_SIZE, =dgemm_prefetch_size_b
950-
ldr B_PRE_SIZE, [B_PRE_SIZE]
951-
ldr C_PRE_SIZE, =dgemm_prefetch_size_c
952-
ldr C_PRE_SIZE, [C_PRE_SIZE]
946+
mov A_PRE_SIZE, #3584
947+
mov B_PRE_SIZE, #512
948+
mov C_PRE_SIZE, #128
953949
add A_PRE_SIZE_64, A_PRE_SIZE, #64
954950
add B_PRE_SIZE_64, B_PRE_SIZE, #64
955951

param.h

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2641,20 +2641,20 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26412641
#define ZGEMM_DEFAULT_UNROLL_M 4
26422642
#define ZGEMM_DEFAULT_UNROLL_N 4
26432643

2644-
#define SGEMM_DEFAULT_P sgemm_p
2645-
#define DGEMM_DEFAULT_P dgemm_p
2646-
#define CGEMM_DEFAULT_P cgemm_p
2647-
#define ZGEMM_DEFAULT_P zgemm_p
2644+
#define SGEMM_DEFAULT_P 128
2645+
#define DGEMM_DEFAULT_P 160
2646+
#define CGEMM_DEFAULT_P 128
2647+
#define ZGEMM_DEFAULT_P 128
26482648

2649-
#define SGEMM_DEFAULT_Q sgemm_q
2650-
#define DGEMM_DEFAULT_Q dgemm_q
2651-
#define CGEMM_DEFAULT_Q cgemm_q
2652-
#define ZGEMM_DEFAULT_Q zgemm_q
2649+
#define SGEMM_DEFAULT_Q 352
2650+
#define DGEMM_DEFAULT_Q 128
2651+
#define CGEMM_DEFAULT_Q 224
2652+
#define ZGEMM_DEFAULT_Q 112
26532653

2654-
#define SGEMM_DEFAULT_R sgemm_r
2655-
#define DGEMM_DEFAULT_R dgemm_r
2656-
#define CGEMM_DEFAULT_R cgemm_r
2657-
#define ZGEMM_DEFAULT_R zgemm_r
2654+
#define SGEMM_DEFAULT_R 4096
2655+
#define DGEMM_DEFAULT_R 4096
2656+
#define CGEMM_DEFAULT_R 4096
2657+
#define ZGEMM_DEFAULT_R 4096
26582658

26592659
#define SYMV_P 16
26602660
#endif
@@ -2720,20 +2720,20 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27202720
#define ZGEMM_DEFAULT_UNROLL_M 4
27212721
#define ZGEMM_DEFAULT_UNROLL_N 4
27222722

2723-
#define SGEMM_DEFAULT_P sgemm_p
2724-
#define DGEMM_DEFAULT_P dgemm_p
2725-
#define CGEMM_DEFAULT_P cgemm_p
2726-
#define ZGEMM_DEFAULT_P zgemm_p
2723+
#define SGEMM_DEFAULT_P 128
2724+
#define DGEMM_DEFAULT_P 160
2725+
#define CGEMM_DEFAULT_P 128
2726+
#define ZGEMM_DEFAULT_P 128
27272727

2728-
#define SGEMM_DEFAULT_Q sgemm_q
2729-
#define DGEMM_DEFAULT_Q dgemm_q
2730-
#define CGEMM_DEFAULT_Q cgemm_q
2731-
#define ZGEMM_DEFAULT_Q zgemm_q
2728+
#define SGEMM_DEFAULT_Q 352
2729+
#define DGEMM_DEFAULT_Q 128
2730+
#define CGEMM_DEFAULT_Q 224
2731+
#define ZGEMM_DEFAULT_Q 112
27322732

2733-
#define SGEMM_DEFAULT_R sgemm_r
2734-
#define DGEMM_DEFAULT_R dgemm_r
2735-
#define CGEMM_DEFAULT_R cgemm_r
2736-
#define ZGEMM_DEFAULT_R zgemm_r
2733+
#define SGEMM_DEFAULT_R 4096
2734+
#define DGEMM_DEFAULT_R 4096
2735+
#define CGEMM_DEFAULT_R 4096
2736+
#define ZGEMM_DEFAULT_R 4096
27372737

27382738
#define SYMV_P 16
27392739
#endif

0 commit comments

Comments
 (0)