void-packages/srcpkgs/zn_poly/files/tuning-64.c

861 lines
38 KiB
C

/*
NOTE: do not edit this file! It is auto-generated by the "tune" program.
(Run "make tune" and then "./tune > tuning.c" to regenerate it.)
*/
/*
tuning.c: global tuning values
Copyright (C) 2007, 2008, David Harvey
This file is part of the zn_poly library (version 0.9).
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) version 3 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "zn_poly_internal.h"
size_t ZNP_mpn_smp_kara_thresh = 35;
size_t ZNP_mpn_mulmid_fallback_thresh = 458;
tuning_info_t tuning_info[] =
{
{ // bits = 0
},
{ // bits = 1
},
{ // bits = 2
141, // KS1 -> KS2 multiplication threshold
14733, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
102, // KS1 -> KS2 squaring threshold
3602, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
102, // KS1 -> KS2 middle product threshold
1378, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 3
112, // KS1 -> KS2 multiplication threshold
4308, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
61, // KS1 -> KS2 squaring threshold
4817, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
102, // KS1 -> KS2 middle product threshold
2356, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 4
80, // KS1 -> KS2 multiplication threshold
2576, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
57, // KS1 -> KS2 squaring threshold
1801, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
72, // KS1 -> KS2 middle product threshold
1053, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 5
67, // KS1 -> KS2 multiplication threshold
3294, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
56, // KS1 -> KS2 squaring threshold
2303, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
65, // KS1 -> KS2 middle product threshold
901, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 6
57, // KS1 -> KS2 multiplication threshold
1152, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
51, // KS1 -> KS2 squaring threshold
985, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
62, // KS1 -> KS2 middle product threshold
985, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 7
47, // KS1 -> KS2 multiplication threshold
1540, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
43, // KS1 -> KS2 squaring threshold
788, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
51, // KS1 -> KS2 middle product threshold
451, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 8
47, // KS1 -> KS2 multiplication threshold
901, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
35, // KS1 -> KS2 squaring threshold
753, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
43, // KS1 -> KS2 middle product threshold
576, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 9
43, // KS1 -> KS2 multiplication threshold
589, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
43, // KS1 -> KS2 squaring threshold
493, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
39, // KS1 -> KS2 middle product threshold
302, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 10
38, // KS1 -> KS2 multiplication threshold
824, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
35, // KS1 -> KS2 squaring threshold
576, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
38, // KS1 -> KS2 middle product threshold
337, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 11
43, // KS1 -> KS2 multiplication threshold
431, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
33, // KS1 -> KS2 squaring threshold
377, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
33, // KS1 -> KS2 middle product threshold
247, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 12
38, // KS1 -> KS2 multiplication threshold
482, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
33, // KS1 -> KS2 squaring threshold
403, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
33, // KS1 -> KS2 middle product threshold
216, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 13
33, // KS1 -> KS2 multiplication threshold
345, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
30, // KS1 -> KS2 squaring threshold
315, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
33, // KS1 -> KS2 middle product threshold
189, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 14
33, // KS1 -> KS2 multiplication threshold
345, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
29, // KS1 -> KS2 squaring threshold
286, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
31, // KS1 -> KS2 middle product threshold
116, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
13 // nussbaumer squaring threshold
},
{ // bits = 15
31, // KS1 -> KS2 multiplication threshold
322, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
23, // KS1 -> KS2 squaring threshold
226, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
29, // KS1 -> KS2 middle product threshold
121, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
1000 // nussbaumer squaring threshold
},
{ // bits = 16
29, // KS1 -> KS2 multiplication threshold
337, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
25, // KS1 -> KS2 squaring threshold
173, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
29, // KS1 -> KS2 middle product threshold
101, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
13 // nussbaumer squaring threshold
},
{ // bits = 17
29, // KS1 -> KS2 multiplication threshold
231, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
23, // KS1 -> KS2 squaring threshold
216, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
27, // KS1 -> KS2 middle product threshold
94, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
13 // nussbaumer squaring threshold
},
{ // bits = 18
25, // KS1 -> KS2 multiplication threshold
189, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
23, // KS1 -> KS2 squaring threshold
134, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
23, // KS1 -> KS2 middle product threshold
94, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
13, // nussbaumer multiplication threshold
13 // nussbaumer squaring threshold
},
{ // bits = 19
27, // KS1 -> KS2 multiplication threshold
226, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
21, // KS1 -> KS2 squaring threshold
216, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
21, // KS1 -> KS2 middle product threshold
86, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
1000, // nussbaumer multiplication threshold
13 // nussbaumer squaring threshold
},
{ // bits = 20
22, // KS1 -> KS2 multiplication threshold
144, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
21, // KS1 -> KS2 squaring threshold
119, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
21, // KS1 -> KS2 middle product threshold
80, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
13, // nussbaumer multiplication threshold
13 // nussbaumer squaring threshold
},
{ // bits = 21
25, // KS1 -> KS2 multiplication threshold
189, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
19, // KS1 -> KS2 squaring threshold
121, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
21, // KS1 -> KS2 middle product threshold
80, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
13, // nussbaumer multiplication threshold
13 // nussbaumer squaring threshold
},
{ // bits = 22
21, // KS1 -> KS2 multiplication threshold
102, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
21, // KS1 -> KS2 squaring threshold
102, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
21, // KS1 -> KS2 middle product threshold
70, // KS2 -> KS4 middle product threshold
SIZE_MAX, // KS4 -> FFT middle product threshold
13, // nussbaumer multiplication threshold
13 // nussbaumer squaring threshold
},
{ // bits = 23
22, // KS1 -> KS2 multiplication threshold
147, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
17, // KS1 -> KS2 squaring threshold
102, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
19, // KS1 -> KS2 middle product threshold
72, // KS2 -> KS4 middle product threshold
23040, // KS4 -> FFT middle product threshold
13, // nussbaumer multiplication threshold
12 // nussbaumer squaring threshold
},
{ // bits = 24
19, // KS1 -> KS2 multiplication threshold
86, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
19, // KS1 -> KS2 squaring threshold
72, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
19, // KS1 -> KS2 middle product threshold
66, // KS2 -> KS4 middle product threshold
20868, // KS4 -> FFT middle product threshold
13, // nussbaumer multiplication threshold
12 // nussbaumer squaring threshold
},
{ // bits = 25
21, // KS1 -> KS2 multiplication threshold
149, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
19, // KS1 -> KS2 squaring threshold
102, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
21, // KS1 -> KS2 middle product threshold
66, // KS2 -> KS4 middle product threshold
20868, // KS4 -> FFT middle product threshold
13, // nussbaumer multiplication threshold
12 // nussbaumer squaring threshold
},
{ // bits = 26
17, // KS1 -> KS2 multiplication threshold
86, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
16, // KS1 -> KS2 squaring threshold
72, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
17, // KS1 -> KS2 middle product threshold
66, // KS2 -> KS4 middle product threshold
16026, // KS4 -> FFT middle product threshold
13, // nussbaumer multiplication threshold
12 // nussbaumer squaring threshold
},
{ // bits = 27
17, // KS1 -> KS2 multiplication threshold
119, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
16, // KS1 -> KS2 squaring threshold
64, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
16, // KS1 -> KS2 middle product threshold
66, // KS2 -> KS4 middle product threshold
16026, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 28
23, // KS1 -> KS2 multiplication threshold
107, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
14, // KS1 -> KS2 squaring threshold
62, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
17, // KS1 -> KS2 middle product threshold
66, // KS2 -> KS4 middle product threshold
9451, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 29
17, // KS1 -> KS2 multiplication threshold
85, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
14, // KS1 -> KS2 squaring threshold
65, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
16, // KS1 -> KS2 middle product threshold
61, // KS2 -> KS4 middle product threshold
14044, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 30
17, // KS1 -> KS2 multiplication threshold
66, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
17, // KS1 -> KS2 squaring threshold
43, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
17, // KS1 -> KS2 middle product threshold
61, // KS2 -> KS4 middle product threshold
12307, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 31
17, // KS1 -> KS2 multiplication threshold
73, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
13, // KS1 -> KS2 squaring threshold
35, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
17, // KS1 -> KS2 middle product threshold
57, // KS2 -> KS4 middle product threshold
16026, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 32
17, // KS1 -> KS2 multiplication threshold
56, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
14, // KS1 -> KS2 squaring threshold
40, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
17, // KS1 -> KS2 middle product threshold
56, // KS2 -> KS4 middle product threshold
8013, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 33
16, // KS1 -> KS2 multiplication threshold
47, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
15, // KS1 -> KS2 squaring threshold
29, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
14, // KS1 -> KS2 middle product threshold
51, // KS2 -> KS4 middle product threshold
8560, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 34
16, // KS1 -> KS2 multiplication threshold
47, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
15, // KS1 -> KS2 squaring threshold
27, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
17, // KS1 -> KS2 middle product threshold
47, // KS2 -> KS4 middle product threshold
6154, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 35
16, // KS1 -> KS2 multiplication threshold
47, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
13, // KS1 -> KS2 squaring threshold
29, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
13, // KS1 -> KS2 middle product threshold
43, // KS2 -> KS4 middle product threshold
7022, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 36
16, // KS1 -> KS2 multiplication threshold
36, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
12, // KS1 -> KS2 squaring threshold
29, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
13, // KS1 -> KS2 middle product threshold
43, // KS2 -> KS4 middle product threshold
6154, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 37
14, // KS1 -> KS2 multiplication threshold
36, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
12, // KS1 -> KS2 squaring threshold
25, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
14, // KS1 -> KS2 middle product threshold
47, // KS2 -> KS4 middle product threshold
7022, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 38
16, // KS1 -> KS2 multiplication threshold
30, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
13, // KS1 -> KS2 squaring threshold
25, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
14, // KS1 -> KS2 middle product threshold
43, // KS2 -> KS4 middle product threshold
4726, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 39
15, // KS1 -> KS2 multiplication threshold
32, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
12, // KS1 -> KS2 squaring threshold
23, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
13, // KS1 -> KS2 middle product threshold
40, // KS2 -> KS4 middle product threshold
5393, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
11 // nussbaumer squaring threshold
},
{ // bits = 40
13, // KS1 -> KS2 multiplication threshold
32, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
12, // KS1 -> KS2 squaring threshold
23, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
12, // KS1 -> KS2 middle product threshold
38, // KS2 -> KS4 middle product threshold
4726, // KS4 -> FFT middle product threshold
12, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 41
13, // KS1 -> KS2 multiplication threshold
25, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
12, // KS1 -> KS2 squaring threshold
21, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
13, // KS1 -> KS2 middle product threshold
33, // KS2 -> KS4 middle product threshold
4726, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 42
13, // KS1 -> KS2 multiplication threshold
27, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
12, // KS1 -> KS2 squaring threshold
23, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
13, // KS1 -> KS2 middle product threshold
33, // KS2 -> KS4 middle product threshold
4280, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 43
13, // KS1 -> KS2 multiplication threshold
24, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
12, // KS1 -> KS2 squaring threshold
21, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
13, // KS1 -> KS2 middle product threshold
31, // KS2 -> KS4 middle product threshold
4726, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 44
13, // KS1 -> KS2 multiplication threshold
33, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
10, // KS1 -> KS2 squaring threshold
18, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
13, // KS1 -> KS2 middle product threshold
33, // KS2 -> KS4 middle product threshold
4280, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 45
12, // KS1 -> KS2 multiplication threshold
23, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
10, // KS1 -> KS2 squaring threshold
19, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
13, // KS1 -> KS2 middle product threshold
29, // KS2 -> KS4 middle product threshold
3877, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 46
15, // KS1 -> KS2 multiplication threshold
25, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
10, // KS1 -> KS2 squaring threshold
17, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
13, // KS1 -> KS2 middle product threshold
31, // KS2 -> KS4 middle product threshold
3877, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 47
12, // KS1 -> KS2 multiplication threshold
23, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
12, // KS1 -> KS2 squaring threshold
17, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
12, // KS1 -> KS2 middle product threshold
29, // KS2 -> KS4 middle product threshold
3877, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 48
13, // KS1 -> KS2 multiplication threshold
23, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
9, // KS1 -> KS2 squaring threshold
17, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
10, // KS1 -> KS2 middle product threshold
25, // KS2 -> KS4 middle product threshold
3877, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 49
12, // KS1 -> KS2 multiplication threshold
19, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
8, // KS1 -> KS2 squaring threshold
16, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
10, // KS1 -> KS2 middle product threshold
25, // KS2 -> KS4 middle product threshold
3511, // KS4 -> FFT middle product threshold
11, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 50
10, // KS1 -> KS2 multiplication threshold
19, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
9, // KS1 -> KS2 squaring threshold
17, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
12, // KS1 -> KS2 middle product threshold
27, // KS2 -> KS4 middle product threshold
3511, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 51
10, // KS1 -> KS2 multiplication threshold
19, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
10, // KS1 -> KS2 squaring threshold
16, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
10, // KS1 -> KS2 middle product threshold
23, // KS2 -> KS4 middle product threshold
2363, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 52
12, // KS1 -> KS2 multiplication threshold
21, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
10, // KS1 -> KS2 squaring threshold
16, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
9, // KS1 -> KS2 middle product threshold
24, // KS2 -> KS4 middle product threshold
2697, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 53
12, // KS1 -> KS2 multiplication threshold
19, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
8, // KS1 -> KS2 squaring threshold
16, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
10, // KS1 -> KS2 middle product threshold
24, // KS2 -> KS4 middle product threshold
2140, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
10 // nussbaumer squaring threshold
},
{ // bits = 54
12, // KS1 -> KS2 multiplication threshold
19, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
9, // KS1 -> KS2 squaring threshold
16, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
10, // KS1 -> KS2 middle product threshold
23, // KS2 -> KS4 middle product threshold
2363, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 55
9, // KS1 -> KS2 multiplication threshold
16, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
8, // KS1 -> KS2 squaring threshold
12, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
10, // KS1 -> KS2 middle product threshold
19, // KS2 -> KS4 middle product threshold
1939, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 56
9, // KS1 -> KS2 multiplication threshold
16, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
8, // KS1 -> KS2 squaring threshold
13, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
9, // KS1 -> KS2 middle product threshold
19, // KS2 -> KS4 middle product threshold
2140, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 57
10, // KS1 -> KS2 multiplication threshold
16, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
9, // KS1 -> KS2 squaring threshold
15, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
9, // KS1 -> KS2 middle product threshold
21, // KS2 -> KS4 middle product threshold
2071, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 58
12, // KS1 -> KS2 multiplication threshold
16, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
9, // KS1 -> KS2 squaring threshold
12, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
12, // KS1 -> KS2 middle product threshold
25, // KS2 -> KS4 middle product threshold
2071, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 59
8, // KS1 -> KS2 multiplication threshold
16, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
7, // KS1 -> KS2 squaring threshold
13, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
8, // KS1 -> KS2 middle product threshold
19, // KS2 -> KS4 middle product threshold
1756, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 60
8, // KS1 -> KS2 multiplication threshold
16, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
7, // KS1 -> KS2 squaring threshold
13, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
8, // KS1 -> KS2 middle product threshold
17, // KS2 -> KS4 middle product threshold
1756, // KS4 -> FFT middle product threshold
9, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 61
8, // KS1 -> KS2 multiplication threshold
12, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
7, // KS1 -> KS2 squaring threshold
12, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
8, // KS1 -> KS2 middle product threshold
19, // KS2 -> KS4 middle product threshold
1939, // KS4 -> FFT middle product threshold
9, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 62
10, // KS1 -> KS2 multiplication threshold
19, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
7, // KS1 -> KS2 squaring threshold
14, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
9, // KS1 -> KS2 middle product threshold
23, // KS2 -> KS4 middle product threshold
2697, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 63
9, // KS1 -> KS2 multiplication threshold
25, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
7, // KS1 -> KS2 squaring threshold
19, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
9, // KS1 -> KS2 middle product threshold
23, // KS2 -> KS4 middle product threshold
2363, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
{ // bits = 64
9, // KS1 -> KS2 multiplication threshold
31, // KS2 -> KS4 multiplication threshold
SIZE_MAX, // KS4 -> FFT multiplication threshold
7, // KS1 -> KS2 squaring threshold
25, // KS2 -> KS4 squaring threshold
SIZE_MAX, // KS4 -> FFT squaring threshold
9, // KS1 -> KS2 middle product threshold
25, // KS2 -> KS4 middle product threshold
2697, // KS4 -> FFT middle product threshold
10, // nussbaumer multiplication threshold
9 // nussbaumer squaring threshold
},
};
// end of file ****************************************************************