diff options
author | Torbjorn Granlund <tege@gmplib.org> | 2012-12-15 17:12:49 +0100 |
---|---|---|
committer | Torbjorn Granlund <tege@gmplib.org> | 2012-12-15 17:12:49 +0100 |
commit | 01c78a9dedc4db1207518cb05caa4c455c9765b7 (patch) | |
tree | 70b46389c8c01c2614251a688f33ec81e306d5dc | |
parent | 8cda89c31d0dd560314df13a3afef3461cc6a58f (diff) | |
download | gmp-01c78a9dedc4db1207518cb05caa4c455c9765b7.tar.gz |
Retune.
-rw-r--r-- | mpn/powerpc64/mode64/p5/gmp-mparam.h | 90 | ||||
-rw-r--r-- | mpn/x86_64/core2/gmp-mparam.h | 35 | ||||
-rw-r--r-- | mpn/x86_64/k8/gmp-mparam.h | 74 | ||||
-rw-r--r-- | mpn/x86_64/nano/gmp-mparam.h | 16 |
4 files changed, 109 insertions, 106 deletions
diff --git a/mpn/powerpc64/mode64/p5/gmp-mparam.h b/mpn/powerpc64/mode64/p5/gmp-mparam.h index 9220f99d5..c1670d7c8 100644 --- a/mpn/powerpc64/mode64/p5/gmp-mparam.h +++ b/mpn/powerpc64/mode64/p5/gmp-mparam.h @@ -35,32 +35,31 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ #define BMOD_1_TO_MOD_1_THRESHOLD 40 -#define MUL_TOOM22_THRESHOLD 14 -#define MUL_TOOM33_THRESHOLD 50 -#define MUL_TOOM44_THRESHOLD 121 -#define MUL_TOOM6H_THRESHOLD 202 -#define MUL_TOOM8H_THRESHOLD 260 - -#define MUL_TOOM32_TO_TOOM43_THRESHOLD 82 -#define MUL_TOOM32_TO_TOOM53_THRESHOLD 91 -#define MUL_TOOM42_TO_TOOM53_THRESHOLD 81 -#define MUL_TOOM42_TO_TOOM63_THRESHOLD 88 +#define MUL_TOOM22_THRESHOLD 21 +#define MUL_TOOM33_THRESHOLD 24 +#define MUL_TOOM44_THRESHOLD 70 +#define MUL_TOOM6H_THRESHOLD 262 +#define MUL_TOOM8H_THRESHOLD 393 + +#define MUL_TOOM32_TO_TOOM43_THRESHOLD 49 +#define MUL_TOOM32_TO_TOOM53_THRESHOLD 126 +#define MUL_TOOM42_TO_TOOM53_THRESHOLD 85 +#define MUL_TOOM42_TO_TOOM63_THRESHOLD 94 +#define MUL_TOOM43_TO_TOOM54_THRESHOLD 70 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 24 -#define SQR_TOOM3_THRESHOLD 73 +#define SQR_TOOM3_THRESHOLD 81 #define SQR_TOOM4_THRESHOLD 142 -#define SQR_TOOM6_THRESHOLD 191 +#define SQR_TOOM6_THRESHOLD 189 #define SQR_TOOM8_THRESHOLD 284 -#define MULMID_TOOM42_THRESHOLD 32 +#define MULMID_TOOM42_THRESHOLD 36 #define MULMOD_BNM1_THRESHOLD 12 -#define SQRMOD_BNM1_THRESHOLD 17 - -#define POWM_SEC_TABLE 4,35,387,1068,2699 +#define SQRMOD_BNM1_THRESHOLD 15 -#define MUL_FFT_MODF_THRESHOLD 348 /* k = 5 */ +#define MUL_FFT_MODF_THRESHOLD 304 /* k = 5 */ #define MUL_FFT_TABLE3 \ { { 348, 5}, { 17, 6}, { 9, 5}, { 19, 6}, \ { 10, 5}, { 21, 6}, { 21, 7}, { 11, 6}, \ @@ -115,9 +114,9 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ { 65536,17}, { 131072,18}, { 262144,19}, { 524288,20}, \ {1048576,21}, {2097152,22}, {4194304,23}, {8388608,24} } #define MUL_FFT_TABLE3_SIZE 208 -#define MUL_FFT_THRESHOLD 3712 +#define MUL_FFT_THRESHOLD 4224 -#define SQR_FFT_MODF_THRESHOLD 272 /* k = 5 */ +#define SQR_FFT_MODF_THRESHOLD 284 /* k = 5 */ #define SQR_FFT_TABLE3 \ { { 272, 5}, { 15, 6}, { 8, 5}, { 17, 6}, \ { 19, 7}, { 17, 8}, { 9, 7}, { 21, 8}, \ @@ -168,39 +167,42 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ { 262144,19}, { 524288,20}, {1048576,21}, {2097152,22}, \ {4194304,23}, {8388608,24} } #define SQR_FFT_TABLE3_SIZE 190 -#define SQR_FFT_THRESHOLD 2752 +#define SQR_FFT_THRESHOLD 3264 -#define MULLO_BASECASE_THRESHOLD 0 -#define MULLO_DC_THRESHOLD 42 -#define MULLO_MUL_N_THRESHOLD 6633 +#define MULLO_BASECASE_THRESHOLD 6 +#define MULLO_DC_THRESHOLD 60 +#define MULLO_MUL_N_THRESHOLD 7463 -#define DC_DIV_QR_THRESHOLD 43 -#define DC_DIVAPPR_Q_THRESHOLD 155 -#define DC_BDIV_QR_THRESHOLD 46 -#define DC_BDIV_Q_THRESHOLD 120 +#define DC_DIV_QR_THRESHOLD 58 +#define DC_DIVAPPR_Q_THRESHOLD 232 +#define DC_BDIV_QR_THRESHOLD 78 +#define DC_BDIV_Q_THRESHOLD 238 -#define INV_MULMOD_BNM1_THRESHOLD 52 -#define INV_NEWTON_THRESHOLD 177 -#define INV_APPR_THRESHOLD 165 +#define INV_MULMOD_BNM1_THRESHOLD 92 +#define INV_NEWTON_THRESHOLD 155 +#define INV_APPR_THRESHOLD 157 -#define BINV_NEWTON_THRESHOLD 206 -#define REDC_1_TO_REDC_N_THRESHOLD 55 +#define BINV_NEWTON_THRESHOLD 155 +#define REDC_1_TO_REDC_N_THRESHOLD 61 -#define MU_DIV_QR_THRESHOLD 924 -#define MU_DIVAPPR_Q_THRESHOLD 924 -#define MUPI_DIV_QR_THRESHOLD 81 -#define MU_BDIV_QR_THRESHOLD 872 +#define MU_DIV_QR_THRESHOLD 998 +#define MU_DIVAPPR_Q_THRESHOLD 979 +#define MUPI_DIV_QR_THRESHOLD 79 +#define MU_BDIV_QR_THRESHOLD 823 #define MU_BDIV_Q_THRESHOLD 942 -#define MATRIX22_STRASSEN_THRESHOLD 15 -#define HGCD_THRESHOLD 108 -#define HGCD_APPR_THRESHOLD 113 -#define HGCD_REDUCE_THRESHOLD 2121 -#define GCD_DC_THRESHOLD 315 -#define GCDEXT_DC_THRESHOLD 237 +#define MATRIX22_STRASSEN_THRESHOLD 14 +#define HGCD_THRESHOLD 74 +#define HGCD_APPR_THRESHOLD 155 +#define HGCD_REDUCE_THRESHOLD 2479 +#define GCD_DC_THRESHOLD 351 +#define GCDEXT_DC_THRESHOLD 288 #define JACOBI_BASE_METHOD 4 -#define GET_STR_DC_THRESHOLD 13 -#define GET_STR_PRECOMPUTE_THRESHOLD 23 +#define GET_STR_DC_THRESHOLD 12 +#define GET_STR_PRECOMPUTE_THRESHOLD 21 #define SET_STR_DC_THRESHOLD 650 #define SET_STR_PRECOMPUTE_THRESHOLD 1585 + +#define FAC_DSC_THRESHOLD 662 +#define FAC_ODD_THRESHOLD 28 diff --git a/mpn/x86_64/core2/gmp-mparam.h b/mpn/x86_64/core2/gmp-mparam.h index 56a20799b..f5593ea41 100644 --- a/mpn/x86_64/core2/gmp-mparam.h +++ b/mpn/x86_64/core2/gmp-mparam.h @@ -28,38 +28,36 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MOD_1N_TO_MOD_1_1_THRESHOLD 3 #define MOD_1U_TO_MOD_1_1_THRESHOLD 2 #define MOD_1_1_TO_MOD_1_2_THRESHOLD 11 -#define MOD_1_2_TO_MOD_1_4_THRESHOLD 16 -#define PREINV_MOD_1_TO_MOD_1_THRESHOLD 7 +#define MOD_1_2_TO_MOD_1_4_THRESHOLD 15 +#define PREINV_MOD_1_TO_MOD_1_THRESHOLD 6 #define USE_PREINV_DIVREM_1 1 /* native */ #define DIV_QR_2_PI2_THRESHOLD MP_SIZE_T_MAX /* never */ #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ -#define BMOD_1_TO_MOD_1_THRESHOLD 26 +#define BMOD_1_TO_MOD_1_THRESHOLD 23 #define MUL_TOOM22_THRESHOLD 23 #define MUL_TOOM33_THRESHOLD 65 #define MUL_TOOM44_THRESHOLD 106 -#define MUL_TOOM6H_THRESHOLD 157 -#define MUL_TOOM8H_THRESHOLD 199 +#define MUL_TOOM6H_THRESHOLD 224 +#define MUL_TOOM8H_THRESHOLD 0 /* always */ #define MUL_TOOM32_TO_TOOM43_THRESHOLD 69 #define MUL_TOOM32_TO_TOOM53_THRESHOLD 76 #define MUL_TOOM42_TO_TOOM53_THRESHOLD 73 -#define MUL_TOOM42_TO_TOOM63_THRESHOLD 78 +#define MUL_TOOM42_TO_TOOM63_THRESHOLD 72 #define MUL_TOOM43_TO_TOOM54_THRESHOLD 100 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ #define SQR_TOOM2_THRESHOLD 28 #define SQR_TOOM3_THRESHOLD 101 #define SQR_TOOM4_THRESHOLD 148 -#define SQR_TOOM6_THRESHOLD 222 +#define SQR_TOOM6_THRESHOLD 206 #define SQR_TOOM8_THRESHOLD 296 #define MULMID_TOOM42_THRESHOLD 24 -#define MULMOD_BNM1_THRESHOLD 17 -#define SQRMOD_BNM1_THRESHOLD 14 - -#define POWM_SEC_TABLE 2,65,322,780,1421,2080 +#define MULMOD_BNM1_THRESHOLD 18 +#define SQRMOD_BNM1_THRESHOLD 17 #define MUL_FFT_MODF_THRESHOLD 380 /* k = 5 */ #define MUL_FFT_TABLE3 \ @@ -157,7 +155,7 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ { 262144,19}, { 524288,20}, {1048576,21}, {2097152,22}, \ {4194304,23}, {8388608,24} } #define SQR_FFT_TABLE3_SIZE 178 -#define SQR_FFT_THRESHOLD 2752 +#define SQR_FFT_THRESHOLD 3520 #define MULLO_BASECASE_THRESHOLD 0 /* always */ #define MULLO_DC_THRESHOLD 55 @@ -182,18 +180,21 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MU_BDIV_QR_THRESHOLD 1057 #define MU_BDIV_Q_THRESHOLD 1187 +#define POWM_SEC_TABLE 2,65,322,780 + + #define MATRIX22_STRASSEN_THRESHOLD 17 #define HGCD_THRESHOLD 135 #define HGCD_APPR_THRESHOLD 178 #define HGCD_REDUCE_THRESHOLD 2121 -#define GCD_DC_THRESHOLD 487 +#define GCD_DC_THRESHOLD 416 #define GCDEXT_DC_THRESHOLD 361 #define JACOBI_BASE_METHOD 4 #define GET_STR_DC_THRESHOLD 12 -#define GET_STR_PRECOMPUTE_THRESHOLD 22 -#define SET_STR_DC_THRESHOLD 818 +#define GET_STR_PRECOMPUTE_THRESHOLD 21 +#define SET_STR_DC_THRESHOLD 552 #define SET_STR_PRECOMPUTE_THRESHOLD 1815 -#define FAC_DSC_THRESHOLD 592 -#define FAC_ODD_THRESHOLD 29 +#define FAC_DSC_THRESHOLD 608 +#define FAC_ODD_THRESHOLD 28 diff --git a/mpn/x86_64/k8/gmp-mparam.h b/mpn/x86_64/k8/gmp-mparam.h index d3af1b78d..fb157059d 100644 --- a/mpn/x86_64/k8/gmp-mparam.h +++ b/mpn/x86_64/k8/gmp-mparam.h @@ -36,35 +36,33 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define USE_PREINV_DIVREM_1 1 /* native */ #define DIV_QR_2_PI2_THRESHOLD MP_SIZE_T_MAX /* never */ #define DIVEXACT_1_THRESHOLD 0 /* always (native) */ -#define BMOD_1_TO_MOD_1_THRESHOLD 19 +#define BMOD_1_TO_MOD_1_THRESHOLD 17 #define MUL_TOOM22_THRESHOLD 27 #define MUL_TOOM33_THRESHOLD 81 #define MUL_TOOM44_THRESHOLD 242 -#define MUL_TOOM6H_THRESHOLD 466 -#define MUL_TOOM8H_THRESHOLD 0 /* always */ +#define MUL_TOOM6H_THRESHOLD 369 +#define MUL_TOOM8H_THRESHOLD 482 #define MUL_TOOM32_TO_TOOM43_THRESHOLD 97 #define MUL_TOOM32_TO_TOOM53_THRESHOLD 153 -#define MUL_TOOM42_TO_TOOM53_THRESHOLD 160 -#define MUL_TOOM42_TO_TOOM63_THRESHOLD 163 -#define MUL_TOOM43_TO_TOOM54_THRESHOLD 168 +#define MUL_TOOM42_TO_TOOM53_THRESHOLD 113 +#define MUL_TOOM42_TO_TOOM63_THRESHOLD 187 +#define MUL_TOOM43_TO_TOOM54_THRESHOLD 166 #define SQR_BASECASE_THRESHOLD 0 /* always (native) */ -#define SQR_TOOM2_THRESHOLD 36 -#define SQR_TOOM3_THRESHOLD 117 -#define SQR_TOOM4_THRESHOLD 327 -#define SQR_TOOM6_THRESHOLD 0 /* always */ +#define SQR_TOOM2_THRESHOLD 34 +#define SQR_TOOM3_THRESHOLD 115 +#define SQR_TOOM4_THRESHOLD 527 +#define SQR_TOOM6_THRESHOLD 587 #define SQR_TOOM8_THRESHOLD 0 /* always */ #define MULMID_TOOM42_THRESHOLD 36 -#define MULMOD_BNM1_THRESHOLD 17 -#define SQRMOD_BNM1_THRESHOLD 21 +#define MULMOD_BNM1_THRESHOLD 18 +#define SQRMOD_BNM1_THRESHOLD 19 -#define POWM_SEC_TABLE 2,29,367,1926 - -#define MUL_FFT_MODF_THRESHOLD 570 /* k = 5 */ +#define MUL_FFT_MODF_THRESHOLD 642 /* k = 5 */ #define MUL_FFT_TABLE3 \ { { 570, 5}, { 21, 6}, { 11, 5}, { 23, 6}, \ { 25, 7}, { 13, 6}, { 27, 7}, { 15, 6}, \ @@ -114,9 +112,9 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ { 524288,20}, {1048576,21}, {2097152,22}, {4194304,23}, \ {8388608,24} } #define MUL_FFT_TABLE3_SIZE 185 -#define MUL_FFT_THRESHOLD 7552 +#define MUL_FFT_THRESHOLD 11520 -#define SQR_FFT_MODF_THRESHOLD 460 /* k = 5 */ +#define SQR_FFT_MODF_THRESHOLD 565 /* k = 5 */ #define SQR_FFT_TABLE3 \ { { 460, 5}, { 21, 6}, { 11, 5}, { 23, 6}, \ { 12, 5}, { 25, 6}, { 27, 7}, { 14, 6}, \ @@ -170,43 +168,45 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ { 131072,18}, { 262144,19}, { 524288,20}, {1048576,21}, \ {2097152,22}, {4194304,23}, {8388608,24} } #define SQR_FFT_TABLE3_SIZE 203 -#define SQR_FFT_THRESHOLD 5248 +#define SQR_FFT_THRESHOLD 5568 #define MULLO_BASECASE_THRESHOLD 0 /* always */ -#define MULLO_DC_THRESHOLD 77 +#define MULLO_DC_THRESHOLD 63 #define MULLO_MUL_N_THRESHOLD 22239 -#define DC_DIV_QR_THRESHOLD 43 +#define DC_DIV_QR_THRESHOLD 40 #define DC_DIVAPPR_Q_THRESHOLD 252 #define DC_BDIV_QR_THRESHOLD 38 -#define DC_BDIV_Q_THRESHOLD 104 +#define DC_BDIV_Q_THRESHOLD 168 -#define INV_MULMOD_BNM1_THRESHOLD 54 -#define INV_NEWTON_THRESHOLD 230 -#define INV_APPR_THRESHOLD 220 +#define INV_MULMOD_BNM1_THRESHOLD 67 +#define INV_NEWTON_THRESHOLD 246 +#define INV_APPR_THRESHOLD 236 #define BINV_NEWTON_THRESHOLD 252 #define REDC_1_TO_REDC_2_THRESHOLD 11 #define REDC_2_TO_REDC_N_THRESHOLD 84 -#define MU_DIV_QR_THRESHOLD 1895 +#define MU_DIV_QR_THRESHOLD 1932 #define MU_DIVAPPR_Q_THRESHOLD 1895 -#define MUPI_DIV_QR_THRESHOLD 106 -#define MU_BDIV_QR_THRESHOLD 1589 -#define MU_BDIV_Q_THRESHOLD 1718 +#define MUPI_DIV_QR_THRESHOLD 99 +#define MU_BDIV_QR_THRESHOLD 1528 +#define MU_BDIV_Q_THRESHOLD 1787 + +#define POWM_SEC_TABLE 3,35,322,1926 #define MATRIX22_STRASSEN_THRESHOLD 21 -#define HGCD_THRESHOLD 141 -#define HGCD_APPR_THRESHOLD 183 +#define HGCD_THRESHOLD 140 +#define HGCD_APPR_THRESHOLD 190 #define HGCD_REDUCE_THRESHOLD 4120 -#define GCD_DC_THRESHOLD 545 -#define GCDEXT_DC_THRESHOLD 487 +#define GCD_DC_THRESHOLD 606 +#define GCDEXT_DC_THRESHOLD 492 #define JACOBI_BASE_METHOD 4 #define GET_STR_DC_THRESHOLD 18 -#define GET_STR_PRECOMPUTE_THRESHOLD 33 -#define SET_STR_DC_THRESHOLD 248 -#define SET_STR_PRECOMPUTE_THRESHOLD 2259 +#define GET_STR_PRECOMPUTE_THRESHOLD 32 +#define SET_STR_DC_THRESHOLD 266 +#define SET_STR_PRECOMPUTE_THRESHOLD 2105 -#define FAC_DSC_THRESHOLD 1313 -#define FAC_ODD_THRESHOLD 28 +#define FAC_DSC_THRESHOLD 1474 +#define FAC_ODD_THRESHOLD 24 diff --git a/mpn/x86_64/nano/gmp-mparam.h b/mpn/x86_64/nano/gmp-mparam.h index 52788acfb..d93548fae 100644 --- a/mpn/x86_64/nano/gmp-mparam.h +++ b/mpn/x86_64/nano/gmp-mparam.h @@ -59,10 +59,8 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MULMID_TOOM42_THRESHOLD 28 -#define MULMOD_BNM1_THRESHOLD 16 -#define SQRMOD_BNM1_THRESHOLD 20 - -#define POWM_SEC_TABLE 3,29,387,1318 +#define MULMOD_BNM1_THRESHOLD 13 +#define SQRMOD_BNM1_THRESHOLD 17 #define MUL_FFT_MODF_THRESHOLD 376 /* k = 5 */ #define MUL_FFT_TABLE3 \ @@ -180,7 +178,7 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ { 131072,18}, { 262144,19}, { 524288,20}, {1048576,21}, \ {2097152,22}, {4194304,23}, {8388608,24} } #define SQR_FFT_TABLE3_SIZE 215 -#define SQR_FFT_THRESHOLD 3264 +#define SQR_FFT_THRESHOLD 2880 #define MULLO_BASECASE_THRESHOLD 0 /* always */ #define MULLO_DC_THRESHOLD 79 @@ -188,10 +186,10 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define DC_DIV_QR_THRESHOLD 54 #define DC_DIVAPPR_Q_THRESHOLD 153 -#define DC_BDIV_QR_THRESHOLD 38 +#define DC_BDIV_QR_THRESHOLD 51 #define DC_BDIV_Q_THRESHOLD 52 -#define INV_MULMOD_BNM1_THRESHOLD 82 +#define INV_MULMOD_BNM1_THRESHOLD 52 #define INV_NEWTON_THRESHOLD 150 #define INV_APPR_THRESHOLD 151 @@ -205,6 +203,8 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define MU_BDIV_QR_THRESHOLD 1142 #define MU_BDIV_Q_THRESHOLD 1499 +#define POWM_SEC_TABLE 4,29,387,1421 + #define MATRIX22_STRASSEN_THRESHOLD 17 #define HGCD_THRESHOLD 112 #define HGCD_APPR_THRESHOLD 185 @@ -215,7 +215,7 @@ along with the GNU MP Library. If not, see http://www.gnu.org/licenses/. */ #define GET_STR_DC_THRESHOLD 11 #define GET_STR_PRECOMPUTE_THRESHOLD 25 -#define SET_STR_DC_THRESHOLD 711 +#define SET_STR_DC_THRESHOLD 414 #define SET_STR_PRECOMPUTE_THRESHOLD 1945 #define FAC_DSC_THRESHOLD 1517 |