From 96290ef5877af28ee5a9690aa06b9a353a91fcfd Mon Sep 17 00:00:00 2001 From: wbhart Date: Thu, 25 Oct 2012 22:25:37 +0000 Subject: [PATCH] Copied final tuning params across from *nix. --- mpn/x86_64w/bobcat/gmp-mparam.h | 82 +++++++++++++---------- mpn/x86_64w/nehalem/westmere/gmp-mparam.h | 82 +++++++++++++++++++++++ 2 files changed, 130 insertions(+), 34 deletions(-) create mode 100644 mpn/x86_64w/nehalem/westmere/gmp-mparam.h diff --git a/mpn/x86_64w/bobcat/gmp-mparam.h b/mpn/x86_64w/bobcat/gmp-mparam.h index d77f078b..c4f4bc59 100644 --- a/mpn/x86_64w/bobcat/gmp-mparam.h +++ b/mpn/x86_64w/bobcat/gmp-mparam.h @@ -1,21 +1,21 @@ -/* Generated by tuneup.c, 2011-11-22, gcc 4.5 */ +/* Generated by tuneup.c, 2012-10-25, gcc 4.6 */ #define MUL_KARATSUBA_THRESHOLD 14 -#define MUL_TOOM3_THRESHOLD 75 +#define MUL_TOOM3_THRESHOLD 90 #define MUL_TOOM4_THRESHOLD 214 -#define MUL_TOOM8H_THRESHOLD 292 +#define MUL_TOOM8H_THRESHOLD 286 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_KARATSUBA_THRESHOLD 27 -#define SQR_TOOM3_THRESHOLD 89 -#define SQR_TOOM4_THRESHOLD 704 -#define SQR_TOOM8_THRESHOLD 704 +#define SQR_TOOM3_THRESHOLD 90 +#define SQR_TOOM4_THRESHOLD 996 +#define SQR_TOOM8_THRESHOLD 996 -#define POWM_THRESHOLD 158 +#define POWM_THRESHOLD 113 -#define HGCD_THRESHOLD 38 -#define GCD_DC_THRESHOLD 1502 -#define GCDEXT_DC_THRESHOLD 1015 +#define HGCD_THRESHOLD 30 +#define GCD_DC_THRESHOLD 2279 +#define GCDEXT_DC_THRESHOLD 1502 #define JACOBI_BASE_METHOD 1 #define DIVREM_1_NORM_THRESHOLD MP_SIZE_T_MAX /* never */ @@ -27,42 +27,56 @@ #define DIVEXACT_1_THRESHOLD 0 /* always */ #define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ #define MOD_1_1_THRESHOLD 6 -#define MOD_1_2_THRESHOLD 6 -#define MOD_1_3_THRESHOLD 122 -#define DIVREM_HENSEL_QR_1_THRESHOLD 15 +#define MOD_1_2_THRESHOLD 20 +#define MOD_1_3_THRESHOLD 20 +#define DIVREM_HENSEL_QR_1_THRESHOLD 14 #define RSH_DIVREM_HENSEL_QR_1_THRESHOLD 19 -#define DIVREM_EUCLID_HENSEL_THRESHOLD 25 +#define DIVREM_EUCLID_HENSEL_THRESHOLD 23 -#define ROOTREM_THRESHOLD 11 +#define ROOTREM_THRESHOLD 6 #define GET_STR_DC_THRESHOLD 16 -#define GET_STR_PRECOMPUTE_THRESHOLD 26 -#define SET_STR_DC_THRESHOLD 191 -#define SET_STR_PRECOMPUTE_THRESHOLD 591 +#define GET_STR_PRECOMPUTE_THRESHOLD 25 +#define SET_STR_DC_THRESHOLD 210 +#define SET_STR_PRECOMPUTE_THRESHOLD 382 -#define MUL_FFT_FULL_THRESHOLD 2112 +#define MUL_FFT_FULL_THRESHOLD 3520 -#define SQR_FFT_FULL_THRESHOLD 2240 +#define SQR_FFT_FULL_THRESHOLD 5440 -#define MULLOW_BASECASE_THRESHOLD 5 -#define MULLOW_DC_THRESHOLD 32 -#define MULLOW_MUL_THRESHOLD 3176 +#define MULLOW_BASECASE_THRESHOLD 7 +#define MULLOW_DC_THRESHOLD 39 +#define MULLOW_MUL_THRESHOLD 5297 #define MULHIGH_BASECASE_THRESHOLD 8 -#define MULHIGH_DC_THRESHOLD 33 -#define MULHIGH_MUL_THRESHOLD 3176 +#define MULHIGH_DC_THRESHOLD 39 +#define MULHIGH_MUL_THRESHOLD 3239 -#define MULMOD_2EXPM1_THRESHOLD 14 +#define MULMOD_2EXPM1_THRESHOLD 16 -#define FAC_UI_THRESHOLD 32756 -#define DC_DIV_QR_THRESHOLD 56 +#define FAC_UI_THRESHOLD 1735 +#define DC_DIV_QR_THRESHOLD 258 #define DC_DIVAPPR_Q_N_THRESHOLD 110 -#define INV_DIV_QR_THRESHOLD 3152 +#define INV_DIV_QR_THRESHOLD 501 #define INV_DIVAPPR_Q_N_THRESHOLD 110 #define DC_DIV_Q_THRESHOLD 156 -#define INV_DIV_Q_THRESHOLD 4765 -#define DC_DIVAPPR_Q_THRESHOLD 126 -#define INV_DIVAPPR_Q_THRESHOLD 13019 -#define DC_BDIV_QR_THRESHOLD 54 +#define INV_DIV_Q_THRESHOLD 6535 +#define DC_DIVAPPR_Q_THRESHOLD 110 +#define INV_DIVAPPR_Q_THRESHOLD 13752 +#define DC_BDIV_QR_THRESHOLD 258 #define DC_BDIV_Q_THRESHOLD 62 -/* Tuneup completed successfully, took 732 seconds */ + +/* fft_tuning -- autogenerated by tune-fft */ + +#define FFT_TAB \ + { { 4, 3 }, { 3, 3 }, { 3, 2 }, { 2, 1 }, { 1, 0 } } + +#define MULMOD_TAB \ + { 4, 3, 3, 4, 4, 3, 3, 3, 3, 2, 2, 3, 2, 2, 2, 2, 2, 1, 1 } + +#define FFT_N_NUM 19 + +#define FFT_MULMOD_2EXPP1_CUTOFF 128 + + +/* Tuneup completed successfully, took 356 seconds */ diff --git a/mpn/x86_64w/nehalem/westmere/gmp-mparam.h b/mpn/x86_64w/nehalem/westmere/gmp-mparam.h new file mode 100644 index 00000000..8f820e1c --- /dev/null +++ b/mpn/x86_64w/nehalem/westmere/gmp-mparam.h @@ -0,0 +1,82 @@ +/* Generated by tuneup.c, 2012-10-24, gcc 4.4 */ + +#define MUL_KARATSUBA_THRESHOLD 16 +#define MUL_TOOM3_THRESHOLD 90 +#define MUL_TOOM4_THRESHOLD 166 +#define MUL_TOOM8H_THRESHOLD 270 + +#define SQR_BASECASE_THRESHOLD 0 /* always (native) */ +#define SQR_KARATSUBA_THRESHOLD 31 +#define SQR_TOOM3_THRESHOLD 90 +#define SQR_TOOM4_THRESHOLD 250 +#define SQR_TOOM8_THRESHOLD 303 + +#define POWM_THRESHOLD 101 + +#define HGCD_THRESHOLD 75 +#define GCD_DC_THRESHOLD 1488 +#define GCDEXT_DC_THRESHOLD 1095 +#define JACOBI_BASE_METHOD 1 + +#define DIVREM_1_NORM_THRESHOLD MP_SIZE_T_MAX /* never */ +#define DIVREM_1_UNNORM_THRESHOLD MP_SIZE_T_MAX /* never */ +#define MOD_1_NORM_THRESHOLD 0 /* always */ +#define MOD_1_UNNORM_THRESHOLD 0 /* always */ +#define USE_PREINV_DIVREM_1 1 /* native */ +#define USE_PREINV_MOD_1 1 +#define DIVEXACT_1_THRESHOLD 0 /* always */ +#define MODEXACT_1_ODD_THRESHOLD 0 /* always (native) */ +#define MOD_1_1_THRESHOLD 5 +#define MOD_1_2_THRESHOLD 8 +#define MOD_1_3_THRESHOLD 19 +#define DIVREM_HENSEL_QR_1_THRESHOLD 12 +#define RSH_DIVREM_HENSEL_QR_1_THRESHOLD 7 +#define DIVREM_EUCLID_HENSEL_THRESHOLD 89 + +#define ROOTREM_THRESHOLD 6 + +#define GET_STR_DC_THRESHOLD 18 +#define GET_STR_PRECOMPUTE_THRESHOLD 23 +#define SET_STR_DC_THRESHOLD 6142 +#define SET_STR_PRECOMPUTE_THRESHOLD 12258 + +#define MUL_FFT_FULL_THRESHOLD 3008 + +#define SQR_FFT_FULL_THRESHOLD 2880 + +#define MULLOW_BASECASE_THRESHOLD 7 +#define MULLOW_DC_THRESHOLD 11 +#define MULLOW_MUL_THRESHOLD 2587 + +#define MULHIGH_BASECASE_THRESHOLD 16 +#define MULHIGH_DC_THRESHOLD 16 +#define MULHIGH_MUL_THRESHOLD 2587 + +#define MULMOD_2EXPM1_THRESHOLD 14 + +#define FAC_UI_THRESHOLD 1590 +#define DC_DIV_QR_THRESHOLD 100 +#define DC_DIVAPPR_Q_N_THRESHOLD 45 +#define INV_DIV_QR_THRESHOLD 465 +#define INV_DIVAPPR_Q_N_THRESHOLD 45 +#define DC_DIV_Q_THRESHOLD 104 +#define INV_DIV_Q_THRESHOLD 3837 +#define DC_DIVAPPR_Q_THRESHOLD 93 +#define INV_DIVAPPR_Q_THRESHOLD 11489 +#define DC_BDIV_QR_THRESHOLD 100 +#define DC_BDIV_Q_THRESHOLD 10 + +/* fft_tuning -- autogenerated by tune-fft */ + +#define FFT_TAB \ + { { 4, 3 }, { 3, 3 }, { 3, 2 }, { 2, 1 }, { 1, 0 } } + +#define MULMOD_TAB \ + { 4, 3, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1 } + +#define FFT_N_NUM 19 + +#define FFT_MULMOD_2EXPP1_CUTOFF 128 + + +/* Tuneup completed successfully, took 129 seconds */