mirror of
https://github.com/amd/blis.git
synced 2026-05-11 01:30:00 +00:00
Added separeate micro-panel alignment for A and B.
Details: - Changed the recently-added micro-panel alignment macros so that we now have two sets--one for micro-panels of matrix A and one for micro- panels of matrix B: BLIS_UPANEL_[AB]_ALIGN_SIZE_?. - Store each set of alignment values into a separate blksz_t object in bli_gemm_cntl_init(). - Adjusted packm_init() to use the separate alignment values. - Added query routines for the new alignment values to bli_info.c. - Modified test suite output accordingly.
This commit is contained in:
@@ -1082,8 +1082,6 @@
|
||||
#define BLIS_PACKDIM_KR_Z BLIS_DEFAULT_KR_Z
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
//
|
||||
// Define level-2 blocksizes.
|
||||
//
|
||||
@@ -1229,24 +1227,38 @@
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
// -- Define micro-panel alignment ---------------------------------------------
|
||||
|
||||
// In this section, we consider each datatype-specific micro-panel alignment
|
||||
// size macro. If it is undefined, we define it to the default value (the size
|
||||
// of the datatype).
|
||||
// In this section, we consider each datatype-specific alignment sizes for
|
||||
// micro-panels of A and B. If any definition is undefined, we define it to
|
||||
// a safe default value (the size of the datatype).
|
||||
|
||||
#ifndef BLIS_UPANEL_ALIGN_SIZE_S
|
||||
#define BLIS_UPANEL_ALIGN_SIZE_S BLIS_SIZEOF_S
|
||||
// Alignment for micro-panels of A
|
||||
#ifndef BLIS_UPANEL_A_ALIGN_SIZE_S
|
||||
#define BLIS_UPANEL_A_ALIGN_SIZE_S BLIS_SIZEOF_S
|
||||
#endif
|
||||
#ifndef BLIS_UPANEL_ALIGN_SIZE_D
|
||||
#define BLIS_UPANEL_ALIGN_SIZE_D BLIS_SIZEOF_D
|
||||
#ifndef BLIS_UPANEL_A_ALIGN_SIZE_D
|
||||
#define BLIS_UPANEL_A_ALIGN_SIZE_D BLIS_SIZEOF_D
|
||||
#endif
|
||||
#ifndef BLIS_UPANEL_ALIGN_SIZE_C
|
||||
#define BLIS_UPANEL_ALIGN_SIZE_C BLIS_SIZEOF_C
|
||||
#ifndef BLIS_UPANEL_A_ALIGN_SIZE_C
|
||||
#define BLIS_UPANEL_A_ALIGN_SIZE_C BLIS_SIZEOF_C
|
||||
#endif
|
||||
#ifndef BLIS_UPANEL_ALIGN_SIZE_Z
|
||||
#define BLIS_UPANEL_ALIGN_SIZE_Z BLIS_SIZEOF_Z
|
||||
#ifndef BLIS_UPANEL_A_ALIGN_SIZE_Z
|
||||
#define BLIS_UPANEL_A_ALIGN_SIZE_Z BLIS_SIZEOF_Z
|
||||
#endif
|
||||
|
||||
// Alignment for micro-panels of B
|
||||
#ifndef BLIS_UPANEL_B_ALIGN_SIZE_S
|
||||
#define BLIS_UPANEL_B_ALIGN_SIZE_S BLIS_SIZEOF_S
|
||||
#endif
|
||||
#ifndef BLIS_UPANEL_B_ALIGN_SIZE_D
|
||||
#define BLIS_UPANEL_B_ALIGN_SIZE_D BLIS_SIZEOF_D
|
||||
#endif
|
||||
#ifndef BLIS_UPANEL_B_ALIGN_SIZE_C
|
||||
#define BLIS_UPANEL_B_ALIGN_SIZE_C BLIS_SIZEOF_C
|
||||
#endif
|
||||
#ifndef BLIS_UPANEL_B_ALIGN_SIZE_Z
|
||||
#define BLIS_UPANEL_B_ALIGN_SIZE_Z BLIS_SIZEOF_Z
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user