diff --git a/common_arm.h b/common_arm.h index 27fa76b76..8411e6dd6 100644 --- a/common_arm.h +++ b/common_arm.h @@ -121,7 +121,7 @@ REALNAME: #endif #define HUGE_PAGESIZE ( 4 << 20) -#define BUFFER_SIZE (16 << 20) +#define BUFFER_SIZE (32 << 20) #define BASE_ADDRESS (START_ADDRESS - BUFFER_SIZE * MAX_CPU_NUMBER) diff --git a/common_arm64.h b/common_arm64.h index a928dbe7b..99e0cee57 100644 --- a/common_arm64.h +++ b/common_arm64.h @@ -141,12 +141,17 @@ REALNAME: #endif #define HUGE_PAGESIZE ( 4 << 20) +#ifndef BUFFERSIZE #if defined(CORTEXA57) #define BUFFER_SIZE (20 << 20) +#elif defined(TSV110) || defined(EMAG8180) +#define BUFFER_SIZE (32 << 20) #else #define BUFFER_SIZE (16 << 20) #endif - +#else +#define BUFFER_SIZE (32 << BUFFERSIZE) +#endif #define BASE_ADDRESS (START_ADDRESS - BUFFER_SIZE * MAX_CPU_NUMBER) diff --git a/common_x86_64.h b/common_x86_64.h index fe5539abe..958e9caed 100644 --- a/common_x86_64.h +++ b/common_x86_64.h @@ -226,7 +226,13 @@ static __inline int blas_quickdivide(unsigned int x, unsigned int y){ #define HUGE_PAGESIZE ( 2 << 20) #ifndef BUFFERSIZE +#if defined(SKYLAKEX) +#define BUFFER_SIZE (32 << 21) +#elif defined(HASWELL) || defined(ZEN) +#define BUFFER_SIZE (32 << 22) +#else #define BUFFER_SIZE (32 << 20) +#endif #else #define BUFFER_SIZE (32 << BUFFERSIZE) #endif diff --git a/common_zarch.h b/common_zarch.h index e105574e0..b5503a7a4 100644 --- a/common_zarch.h +++ b/common_zarch.h @@ -123,11 +123,7 @@ REALNAME: #endif #define HUGE_PAGESIZE ( 4 << 20) -#if defined(CORTEXA57) -#define BUFFER_SIZE (20 << 20) -#else -#define BUFFER_SIZE (16 << 20) -#endif +#define BUFFER_SIZE (32 << 22) #define BASE_ADDRESS (START_ADDRESS - BUFFER_SIZE * MAX_CPU_NUMBER) diff --git a/param.h b/param.h index 410308524..d6cbe544a 100644 --- a/param.h +++ b/param.h @@ -2229,15 +2229,26 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define ZGEMM_DEFAULT_UNROLL_M 8 #define ZGEMM_DEFAULT_UNROLL_N 2 -#define SGEMM_DEFAULT_P 1280 -#define DGEMM_DEFAULT_P 640 -#define CGEMM_DEFAULT_P 640 -#define ZGEMM_DEFAULT_P 320 +#define SGEMM_DEFAULT_P 1280UL +#define DGEMM_DEFAULT_P 640UL +#define CGEMM_DEFAULT_P 640UL +#define ZGEMM_DEFAULT_P 320UL -#define SGEMM_DEFAULT_Q 640 -#define DGEMM_DEFAULT_Q 720 -#define CGEMM_DEFAULT_Q 640 -#define ZGEMM_DEFAULT_Q 640 +#define SGEMM_DEFAULT_Q 640UL +#define DGEMM_DEFAULT_Q 720UL +#define CGEMM_DEFAULT_Q 640UL +#define ZGEMM_DEFAULT_Q 640UL + +#if 0 +#define SGEMM_DEFAULT_R SGEMM_DEFAULT_P +#define DGEMM_DEFAULT_R DGEMM_DEFAULT_P +#define CGEMM_DEFAULT_R CGEMM_DEFAULT_P +#define ZGEMM_DEFAULT_R ZGEMM_DEFAULT_P +#endif +#define SGEMM_DEFAULT_R 4096 +#define DGEMM_DEFAULT_R 4096 +#define CGEMM_DEFAULT_R 4096 +#define ZGEMM_DEFAULT_R 512 #define SYMV_P 8