xref: /libCEED/backends/magma/tuning/a100.h (revision a2f6637ed9f7b99e1cdac198632ca3cb6dbe41d4)
1 ////////////////////////////////////////////////////////////////////////////////
2 // auto-generated from data on a100-cuda11.2
3 
4 ////////////////////////////////////////////////////////////////////////////////
5 std::vector<std::array<int, RECORD_LENGTH> > sgemm_nn_a100 = {
6     {3,   512,     1,   256,     0},
7     {3,   1024,    1,   32,      0},
8     {3,   1536,    1,   32,      0},
9     {3,   2048,    1,   2048,    0},
10     {3,   2560,    1,   256,     0},
11     {3,   3072,    1,   32,      0},
12     {3,   3584,    1,   32,      0},
13     {3,   4096,    1,   512,     0},
14     {3,   4608,    1,   512,     0},
15     {3,   5120,    1,   64,      0},
16     {3,   5632,    1,   32,      0},
17     {3,   6144,    1,   128,     0},
18     {3,   6656,    1,   32,      0},
19     {3,   7168,    1,   512,     0},
20     {3,   7680,    1,   32,      0},
21     {3,   8192,    1,   64,      0},
22     {3,   8704,    1,   512,     0},
23     {3,   9216,    1,   32,      0},
24     {3,   9728,    1,   32,      0},
25     {3,   10240,   1,   128,     0},
26     {3,   20480,   1,   128,     0},
27     {3,   30720,   1,   256,     0},
28     {3,   40960,   1,   512,     0},
29     {3,   51200,   1,   2048,    0},
30     {3,   61440,   1,   32,      0},
31     {3,   71680,   1,   2048,    0},
32     {3,   81920,   1,   2048,    0},
33     {3,   92160,   1,   32,      0},
34     {3,   102400,  1,   32,      0},
35     {3,   204800,  1,   256,     0},
36     {3,   307200,  1,   4096,    0},
37     {3,   409600,  1,   8192,    1},
38     {3,   512000,  1,   2048,    1},
39     {3,   614400,  1,   8192,    1},
40     {3,   716800,  1,   1024,    1},
41     {3,   819200,  1,   8192,    1},
42     {3,   921600,  1,   1024,    1},
43     {3,   1024000, 1,   4096,    1},
44     {4,   512,     1,   64,      0},
45     {4,   1024,    1,   32,      0},
46     {4,   1536,    1,   64,      0},
47     {4,   2048,    1,   32,      0},
48     {4,   2560,    1,   64,      0},
49     {4,   3072,    1,   128,     0},
50     {4,   3584,    1,   512,     0},
51     {4,   4096,    1,   64,      0},
52     {4,   4608,    1,   512,     0},
53     {4,   5120,    1,   1024,    0},
54     {4,   5632,    1,   256,     0},
55     {4,   6144,    1,   2048,    0},
56     {4,   6656,    1,   256,     0},
57     {4,   7168,    1,   512,     0},
58     {4,   7680,    1,   128,     0},
59     {4,   8192,    1,   32,      0},
60     {4,   8704,    1,   32,      0},
61     {4,   9216,    1,   32,      0},
62     {4,   9728,    1,   32,      0},
63     {4,   10240,   1,   2048,    0},
64     {4,   20480,   1,   256,     0},
65     {4,   30720,   1,   32,      0},
66     {4,   40960,   1,   32,      0},
67     {4,   51200,   1,   128,     0},
68     {4,   61440,   1,   64,      0},
69     {4,   71680,   1,   1024,    0},
70     {4,   81920,   1,   1024,    0},
71     {4,   92160,   1,   512,     0},
72     {4,   102400,  1,   1024,    0},
73     {4,   204800,  1,   64,      0},
74     {4,   307200,  1,   1024,    1},
75     {4,   409600,  1,   16384,   1},
76     {4,   512000,  1,   2048,    1},
77     {4,   614400,  1,   4096,    1},
78     {4,   716800,  1,   4096,    1},
79     {4,   819200,  1,   32768,   1},
80     {4,   921600,  1,   2048,    1},
81     {4,   1024000, 1,   8192,    1},
82     {6,   512,     3,   512,     0},
83     {6,   1024,    3,   1024,    0},
84     {6,   1536,    3,   256,     1},
85     {6,   2048,    3,   1024,    1},
86     {6,   2560,    3,   32,      1},
87     {6,   3072,    3,   512,     1},
88     {6,   3584,    3,   256,     1},
89     {6,   4096,    3,   256,     1},
90     {6,   4608,    3,   32,      1},
91     {6,   5120,    3,   64,      1},
92     {6,   5632,    3,   512,     1},
93     {6,   6144,    3,   1024,    1},
94     {6,   6656,    3,   64,      1},
95     {6,   7168,    3,   512,     1},
96     {6,   7680,    3,   32,      1},
97     {6,   8192,    3,   8192,    0},
98     {6,   8704,    3,   32,      1},
99     {6,   9216,    3,   512,     1},
100     {6,   9728,    3,   128,     1},
101     {6,   10240,   3,   1024,    1},
102     {6,   20480,   3,   2048,    1},
103     {6,   30720,   3,   1024,    1},
104     {6,   40960,   3,   128,     1},
105     {6,   51200,   3,   128,     1},
106     {6,   61440,   3,   512,     1},
107     {6,   71680,   3,   256,     1},
108     {6,   81920,   3,   1024,    1},
109     {6,   92160,   3,   1024,    1},
110     {6,   102400,  3,   1024,    1},
111     {6,   204800,  3,   4096,    1},
112     {6,   307200,  3,   512,     1},
113     {6,   409600,  3,   16384,   1},
114     {6,   512000,  3,   1024,    1},
115     {6,   614400,  3,   8192,    1},
116     {6,   716800,  3,   4096,    1},
117     {6,   819200,  3,   8192,    1},
118     {6,   921600,  3,   4096,    1},
119     {6,   1024000, 3,   8192,    1},
120     {10,  512,     4,   512,     0},
121     {10,  1024,    4,   1024,    0},
122     {10,  1536,    4,   32,      1},
123     {10,  2048,    4,   512,     1},
124     {10,  2560,    4,   32,      1},
125     {10,  3072,    4,   64,      1},
126     {10,  3584,    4,   512,     1},
127     {10,  4096,    4,   4096,    0},
128     {10,  4608,    4,   512,     1},
129     {10,  5120,    4,   512,     1},
130     {10,  5632,    4,   512,     1},
131     {10,  6144,    4,   256,     1},
132     {10,  6656,    4,   32,      1},
133     {10,  7168,    4,   32,      1},
134     {10,  7680,    4,   256,     1},
135     {10,  8192,    4,   8192,    0},
136     {10,  8704,    4,   256,     1},
137     {10,  9216,    4,   128,     1},
138     {10,  9728,    4,   128,     1},
139     {10,  10240,   4,   32,      1},
140     {10,  20480,   4,   256,     1},
141     {10,  30720,   4,   2048,    1},
142     {10,  40960,   4,   256,     1},
143     {10,  51200,   4,   2048,    1},
144     {10,  61440,   4,   4096,    1},
145     {10,  71680,   4,   2048,    1},
146     {10,  81920,   4,   512,     1},
147     {10,  92160,   4,   256,     1},
148     {10,  102400,  4,   4096,    1},
149     {10,  204800,  4,   1024,    1},
150     {10,  307200,  4,   1024,    1},
151     {10,  409600,  4,   16384,   1},
152     {10,  512000,  4,   4096,    1},
153     {10,  614400,  4,   8192,    1},
154     {10,  716800,  4,   4096,    1},
155     {10,  819200,  4,   32768,   1},
156     {10,  921600,  4,   4096,    1},
157     {10,  1024000, 4,   8192,    1},
158     {10,  512,     6,   512,     0},
159     {10,  1024,    6,   1024,    0},
160     {10,  1536,    6,   512,     1},
161     {10,  2048,    6,   2048,    0},
162     {10,  2560,    6,   512,     1},
163     {10,  3072,    6,   32,      1},
164     {10,  3584,    6,   256,     1},
165     {10,  4096,    6,   4096,    0},
166     {10,  4608,    6,   512,     1},
167     {10,  5120,    6,   256,     1},
168     {10,  5632,    6,   512,     1},
169     {10,  6144,    6,   256,     1},
170     {10,  6656,    6,   512,     1},
171     {10,  7168,    6,   512,     1},
172     {10,  7680,    6,   512,     1},
173     {10,  8192,    6,   8192,    0},
174     {10,  8704,    6,   256,     1},
175     {10,  9216,    6,   256,     1},
176     {10,  9728,    6,   256,     1},
177     {10,  10240,   6,   512,     1},
178     {10,  20480,   6,   64,      1},
179     {10,  30720,   6,   1024,    1},
180     {10,  40960,   6,   4096,    1},
181     {10,  51200,   6,   512,     1},
182     {10,  61440,   6,   4096,    1},
183     {10,  71680,   6,   256,     1},
184     {10,  81920,   6,   16384,   1},
185     {10,  92160,   6,   2048,    1},
186     {10,  102400,  6,   2048,    1},
187     {10,  204800,  6,   2048,    1},
188     {10,  307200,  6,   2048,    1},
189     {10,  409600,  6,   2048,    1},
190     {10,  512000,  6,   4096,    1},
191     {10,  614400,  6,   512,     1},
192     {10,  716800,  6,   4096,    1},
193     {10,  819200,  6,   32768,   1},
194     {10,  921600,  6,   1024,    1},
195     {10,  1024000, 6,   8192,    1},
196     {15,  512,     12,  512,     0},
197     {15,  1024,    12,  512,     1},
198     {15,  1536,    12,  32,      1},
199     {15,  2048,    12,  2048,    0},
200     {15,  2560,    12,  512,     1},
201     {15,  3072,    12,  256,     1},
202     {15,  3584,    12,  512,     1},
203     {15,  4096,    12,  128,     1},
204     {15,  4608,    12,  512,     1},
205     {15,  5120,    12,  256,     1},
206     {15,  5632,    12,  32,      1},
207     {15,  6144,    12,  64,      1},
208     {15,  6656,    12,  32,      1},
209     {15,  7168,    12,  512,     1},
210     {15,  7680,    12,  32,      1},
211     {15,  8192,    12,  128,     1},
212     {15,  8704,    12,  256,     1},
213     {15,  9216,    12,  512,     1},
214     {15,  9728,    12,  64,      1},
215     {15,  10240,   12,  512,     1},
216     {15,  20480,   12,  4096,    1},
217     {15,  30720,   12,  128,     1},
218     {15,  40960,   12,  8192,    1},
219     {15,  51200,   12,  2048,    1},
220     {15,  61440,   12,  1024,    1},
221     {15,  71680,   12,  2048,    1},
222     {15,  81920,   12,  16384,   1},
223     {15,  92160,   12,  2048,    1},
224     {15,  102400,  12,  1024,    1},
225     {15,  204800,  12,  8192,    1},
226     {15,  307200,  12,  1024,    1},
227     {15,  409600,  12,  16384,   1},
228     {15,  512000,  12,  1024,    1},
229     {15,  614400,  12,  8192,    1},
230     {15,  716800,  12,  4096,    1},
231     {15,  819200,  12,  16384,   1},
232     {15,  921600,  12,  4096,    1},
233     {15,  1024000, 12,  8192,    1},
234     {20,  512,     11,  64,      1},
235     {20,  1024,    11,  128,     1},
236     {20,  1536,    11,  128,     1},
237     {20,  2048,    11,  2048,    0},
238     {20,  2560,    11,  32,      1},
239     {20,  3072,    11,  512,     1},
240     {20,  3584,    11,  64,      1},
241     {20,  4096,    11,  4096,    0},
242     {20,  4608,    11,  128,     1},
243     {20,  5120,    11,  1024,    1},
244     {20,  5632,    11,  32,      1},
245     {20,  6144,    11,  256,     1},
246     {20,  6656,    11,  512,     1},
247     {20,  7168,    11,  64,      1},
248     {20,  7680,    11,  32,      1},
249     {20,  8192,    11,  8192,    0},
250     {20,  8704,    11,  512,     1},
251     {20,  9216,    11,  32,      1},
252     {20,  9728,    11,  128,     1},
253     {20,  10240,   11,  1024,    1},
254     {20,  20480,   11,  512,     1},
255     {20,  30720,   11,  128,     1},
256     {20,  40960,   11,  4096,    1},
257     {20,  51200,   11,  512,     1},
258     {20,  61440,   11,  4096,    1},
259     {20,  71680,   11,  2048,    1},
260     {20,  81920,   11,  8192,    1},
261     {20,  92160,   11,  2048,    1},
262     {20,  102400,  11,  512,     1},
263     {20,  204800,  11,  256,     1},
264     {20,  307200,  11,  4096,    1},
265     {20,  409600,  11,  16384,   1},
266     {20,  512000,  11,  512000,  0},
267     {20,  614400,  11,  614400,  0},
268     {20,  716800,  11,  716800,  0},
269     {20,  819200,  11,  819200,  0},
270     {20,  921600,  11,  921600,  0},
271     {20,  1024000, 11,  1024000, 0},
272     {21,  512,     16,  512,     0},
273     {21,  1024,    16,  1024,    0},
274     {21,  1536,    16,  256,     1},
275     {21,  2048,    16,  2048,    0},
276     {21,  2560,    16,  256,     1},
277     {21,  3072,    16,  64,      1},
278     {21,  3584,    16,  256,     1},
279     {21,  4096,    16,  4096,    0},
280     {21,  4608,    16,  64,      1},
281     {21,  5120,    16,  512,     1},
282     {21,  5632,    16,  256,     1},
283     {21,  6144,    16,  32,      1},
284     {21,  6656,    16,  512,     1},
285     {21,  7168,    16,  1024,    1},
286     {21,  7680,    16,  128,     1},
287     {21,  8192,    16,  32,      1},
288     {21,  8704,    16,  128,     1},
289     {21,  9216,    16,  512,     1},
290     {21,  9728,    16,  32,      1},
291     {21,  10240,   16,  256,     1},
292     {21,  20480,   16,  256,     1},
293     {21,  30720,   16,  1024,    1},
294     {21,  40960,   16,  8192,    1},
295     {21,  51200,   16,  64,      1},
296     {21,  61440,   16,  4096,    1},
297     {21,  71680,   16,  2048,    1},
298     {21,  81920,   16,  2048,    1},
299     {21,  92160,   16,  512,     1},
300     {21,  102400,  16,  4096,    1},
301     {21,  204800,  16,  8192,    1},
302     {21,  307200,  16,  4096,    1},
303     {21,  409600,  16,  409600,  0},
304     {21,  512000,  16,  512000,  0},
305     {21,  614400,  16,  614400,  0},
306     {21,  716800,  16,  716800,  0},
307     {21,  819200,  16,  819200,  0},
308     {21,  921600,  16,  921600,  0},
309     {21,  1024000, 16,  1024000, 0},
310     {28,  512,     25,  64,      1},
311     {28,  1024,    25,  1024,    0},
312     {28,  1536,    25,  256,     1},
313     {28,  2048,    25,  2048,    0},
314     {28,  2560,    25,  64,      1},
315     {28,  3072,    25,  128,     1},
316     {28,  3584,    25,  32,      1},
317     {28,  4096,    25,  256,     1},
318     {28,  4608,    25,  256,     1},
319     {28,  5120,    25,  64,      1},
320     {28,  5632,    25,  128,     1},
321     {28,  6144,    25,  1024,    1},
322     {28,  6656,    25,  256,     1},
323     {28,  7168,    25,  64,      1},
324     {28,  7680,    25,  256,     1},
325     {28,  8192,    25,  8192,    0},
326     {28,  8704,    25,  256,     1},
327     {28,  9216,    25,  256,     1},
328     {28,  9728,    25,  128,     1},
329     {28,  10240,   25,  1024,    1},
330     {28,  20480,   25,  1024,    1},
331     {28,  30720,   25,  1024,    1},
332     {28,  40960,   25,  2048,    1},
333     {28,  51200,   25,  1024,    1},
334     {28,  61440,   25,  4096,    1},
335     {28,  71680,   25,  512,     1},
336     {28,  81920,   25,  512,     1},
337     {28,  92160,   25,  2048,    1},
338     {28,  102400,  25,  4096,    1},
339     {28,  204800,  25,  4096,    1},
340     {28,  307200,  25,  307200,  0},
341     {28,  409600,  25,  409600,  0},
342     {28,  512000,  25,  512000,  0},
343     {28,  614400,  25,  614400,  0},
344     {28,  716800,  25,  716800,  0},
345     {28,  819200,  25,  819200,  0},
346     {28,  921600,  25,  921600,  0},
347     {28,  1024000, 25,  1024000, 0},
348     {35,  512,     24,  512,     0},
349     {35,  1024,    24,  1024,    0},
350     {35,  1536,    24,  256,     1},
351     {35,  2048,    24,  2048,    0},
352     {35,  2560,    24,  32,      1},
353     {35,  3072,    24,  512,     1},
354     {35,  3584,    24,  32,      1},
355     {35,  4096,    24,  4096,    0},
356     {35,  4608,    24,  256,     1},
357     {35,  5120,    24,  32,      1},
358     {35,  5632,    24,  128,     1},
359     {35,  6144,    24,  512,     1},
360     {35,  6656,    24,  64,      1},
361     {35,  7168,    24,  1024,    1},
362     {35,  7680,    24,  512,     1},
363     {35,  8192,    24,  512,     1},
364     {35,  8704,    24,  32,      1},
365     {35,  9216,    24,  64,      1},
366     {35,  9728,    24,  512,     1},
367     {35,  10240,   24,  1024,    1},
368     {35,  20480,   24,  32,      1},
369     {35,  30720,   24,  512,     1},
370     {35,  40960,   24,  2048,    1},
371     {35,  51200,   24,  1024,    1},
372     {35,  61440,   24,  64,      1},
373     {35,  71680,   24,  1024,    1},
374     {35,  81920,   24,  256,     1},
375     {35,  92160,   24,  512,     1},
376     {35,  102400,  24,  512,     1},
377     {35,  204800,  24,  4096,    1},
378     {35,  307200,  24,  307200,  0},
379     {35,  409600,  24,  409600,  0},
380     {35,  512000,  24,  512000,  0},
381     {35,  614400,  24,  614400,  0},
382     {35,  716800,  24,  716800,  0},
383     {35,  819200,  24,  819200,  0},
384     {35,  921600,  24,  921600,  0},
385     {35,  1024000, 24,  1024000, 0},
386     {36,  512,     33,  512,     0},
387     {36,  1024,    33,  1024,    0},
388     {36,  1536,    33,  128,     1},
389     {36,  2048,    33,  1024,    1},
390     {36,  2560,    33,  512,     1},
391     {36,  3072,    33,  256,     1},
392     {36,  3584,    33,  32,      1},
393     {36,  4096,    33,  4096,    0},
394     {36,  4608,    33,  64,      1},
395     {36,  5120,    33,  128,     1},
396     {36,  5632,    33,  128,     1},
397     {36,  6144,    33,  256,     1},
398     {36,  6656,    33,  128,     1},
399     {36,  7168,    33,  256,     1},
400     {36,  7680,    33,  256,     1},
401     {36,  8192,    33,  8192,    1},
402     {36,  8704,    33,  32,      1},
403     {36,  9216,    33,  256,     1},
404     {36,  9728,    33,  32,      1},
405     {36,  10240,   33,  512,     1},
406     {36,  20480,   33,  2048,    1},
407     {36,  30720,   33,  2048,    1},
408     {36,  40960,   33,  8192,    1},
409     {36,  51200,   33,  256,     1},
410     {36,  61440,   33,  4096,    1},
411     {36,  71680,   33,  512,     1},
412     {36,  81920,   33,  16384,   1},
413     {36,  92160,   33,  512,     1},
414     {36,  102400,  33,  2048,    1},
415     {36,  204800,  33,  8192,    1},
416     {36,  307200,  33,  512,     1},
417     {36,  409600,  33,  409600,  0},
418     {36,  512000,  33,  512000,  0},
419     {36,  614400,  33,  614400,  0},
420     {36,  716800,  33,  716800,  0},
421     {36,  819200,  33,  819200,  0},
422     {36,  921600,  33,  921600,  0},
423     {36,  1024000, 33,  1024000, 0},
424     {45,  512,     42,  512,     0},
425     {45,  1024,    42,  1024,    0},
426     {45,  1536,    42,  64,      1},
427     {45,  2048,    42,  2048,    0},
428     {45,  2560,    42,  32,      1},
429     {45,  3072,    42,  1024,    1},
430     {45,  3584,    42,  128,     1},
431     {45,  4096,    42,  2048,    1},
432     {45,  4608,    42,  64,      1},
433     {45,  5120,    42,  64,      1},
434     {45,  5632,    42,  32,      1},
435     {45,  6144,    42,  64,      1},
436     {45,  6656,    42,  512,     1},
437     {45,  7168,    42,  1024,    1},
438     {45,  7680,    42,  256,     1},
439     {45,  8192,    42,  4096,    1},
440     {45,  8704,    42,  64,      1},
441     {45,  9216,    42,  512,     1},
442     {45,  9728,    42,  256,     1},
443     {45,  10240,   42,  1024,    1},
444     {45,  20480,   42,  4096,    1},
445     {45,  30720,   42,  2048,    1},
446     {45,  40960,   42,  512,     1},
447     {45,  51200,   42,  2048,    1},
448     {45,  61440,   42,  4096,    1},
449     {45,  71680,   42,  1024,    1},
450     {45,  81920,   42,  16384,   1},
451     {45,  92160,   42,  1024,    1},
452     {45,  102400,  42,  1024,    1},
453     {45,  204800,  42,  8192,    1},
454     {45,  307200,  42,  307200,  0},
455     {45,  409600,  42,  409600,  0},
456     {45,  512000,  42,  512000,  0},
457     {45,  614400,  42,  614400,  0},
458     {45,  716800,  42,  716800,  0},
459     {45,  819200,  42,  819200,  0},
460     {45,  921600,  42,  921600,  0},
461     {45,  1024000, 42,  1024000, 0},
462     {56,  512,     43,  512,     0},
463     {56,  1024,    43,  64,      1},
464     {56,  1536,    43,  128,     1},
465     {56,  2048,    43,  2048,    0},
466     {56,  2560,    43,  32,      1},
467     {56,  3072,    43,  1024,    1},
468     {56,  3584,    43,  32,      1},
469     {56,  4096,    43,  512,     1},
470     {56,  4608,    43,  64,      1},
471     {56,  5120,    43,  64,      1},
472     {56,  5632,    43,  32,      1},
473     {56,  6144,    43,  256,     1},
474     {56,  6656,    43,  64,      1},
475     {56,  7168,    43,  64,      1},
476     {56,  7680,    43,  32,      1},
477     {56,  8192,    43,  64,      1},
478     {56,  8704,    43,  512,     1},
479     {56,  9216,    43,  1024,    1},
480     {56,  9728,    43,  64,      1},
481     {56,  10240,   43,  1024,    1},
482     {56,  20480,   43,  1024,    1},
483     {56,  30720,   43,  2048,    1},
484     {56,  40960,   43,  512,     1},
485     {56,  51200,   43,  256,     1},
486     {56,  61440,   43,  4096,    1},
487     {56,  71680,   43,  2048,    1},
488     {56,  81920,   43,  16384,   1},
489     {56,  92160,   43,  256,     1},
490     {56,  102400,  43,  512,     1},
491     {56,  204800,  43,  204800,  0},
492     {56,  307200,  43,  307200,  0},
493     {56,  409600,  43,  409600,  0},
494     {56,  512000,  43,  512000,  0},
495     {56,  614400,  43,  614400,  0},
496     {56,  716800,  43,  716800,  0},
497     {56,  819200,  43,  819200,  0},
498     {56,  921600,  43,  921600,  0},
499     {56,  1024000, 43,  1024000, 0},
500     {84,  512,     126, 512,     0},
501     {84,  1024,    126, 1024,    0},
502     {84,  1536,    126, 64,      1},
503     {84,  2048,    126, 256,     1},
504     {84,  2560,    126, 512,     1},
505     {84,  3072,    126, 32,      1},
506     {84,  3584,    126, 256,     1},
507     {84,  4096,    126, 4096,    0},
508     {84,  4608,    126, 256,     1},
509     {84,  5120,    126, 1024,    1},
510     {84,  5632,    126, 512,     1},
511     {84,  6144,    126, 512,     0},
512     {84,  6656,    126, 512,     1},
513     {84,  7168,    126, 1024,    1},
514     {84,  7680,    126, 512,     1},
515     {84,  8192,    126, 4096,    1},
516     {84,  8704,    126, 512,     1},
517     {84,  9216,    126, 128,     1},
518     {84,  9728,    126, 256,     1},
519     {84,  10240,   126, 2048,    1},
520     {84,  20480,   126, 2048,    1},
521     {84,  30720,   126, 1024,    1},
522     {84,  40960,   126, 512,     0},
523     {84,  51200,   126, 51200,   1},
524     {84,  61440,   126, 61440,   1},
525     {84,  71680,   126, 71680,   1},
526     {84,  81920,   126, 81920,   1},
527     {84,  92160,   126, 92160,   1},
528     {84,  102400,  126, 102400,  1},
529     {84,  204800,  126, 204800,  1},
530     {84,  307200,  126, 307200,  1},
531     {84,  409600,  126, 409600,  1},
532     {84,  512000,  126, 512000,  0},
533     {84,  614400,  126, 614400,  0},
534     {84,  716800,  126, 716800,  0},
535     {84,  819200,  126, 819200,  0},
536     {84,  921600,  126, 921600,  0},
537     {84,  1024000, 126, 1024000, 0},
538     {120, 512,     210, 512,     0},
539     {120, 1024,    210, 1024,    0},
540     {120, 1536,    210, 128,     1},
541     {120, 2048,    210, 2048,    0},
542     {120, 2560,    210, 256,     1},
543     {120, 3072,    210, 256,     1},
544     {120, 3584,    210, 512,     1},
545     {120, 4096,    210, 2048,    1},
546     {120, 4608,    210, 512,     1},
547     {120, 5120,    210, 512,     1},
548     {120, 5632,    210, 256,     1},
549     {120, 6144,    210, 2048,    1},
550     {120, 6656,    210, 128,     1},
551     {120, 7168,    210, 256,     1},
552     {120, 7680,    210, 256,     1},
553     {120, 8192,    210, 2048,    1},
554     {120, 8704,    210, 256,     1},
555     {120, 9216,    210, 128,     1},
556     {120, 9728,    210, 256,     1},
557     {120, 10240,   210, 512,     1},
558     {120, 20480,   210, 2048,    1},
559     {120, 30720,   210, 1024,    1},
560     {120, 40960,   210, 1024,    0},
561     {120, 51200,   210, 256,     0},
562     {120, 61440,   210, 512,     0},
563     {120, 71680,   210, 2048,    1},
564     {120, 81920,   210, 512,     0},
565     {120, 92160,   210, 512,     0},
566     {120, 102400,  210, 256,     0},
567     {120, 204800,  210, 4096,    0},
568     {120, 307200,  210, 1024,    0},
569     {120, 409600,  210, 1024,    0},
570     {120, 512000,  210, 512000,  0},
571     {120, 614400,  210, 256,     0},
572     {120, 716800,  210, 256,     0},
573     {120, 819200,  210, 128,     0},
574     {120, 921600,  210, 128,     0},
575     {120, 1024000, 210, 128,     0},
576     {165, 512,     330, 512,     0},
577     {165, 1024,    330, 1024,    0},
578     {165, 1536,    330, 128,     1},
579     {165, 2048,    330, 512,     1},
580     {165, 2560,    330, 512,     1},
581     {165, 3072,    330, 256,     1},
582     {165, 3584,    330, 256,     1},
583     {165, 4096,    330, 4096,    0},
584     {165, 4608,    330, 512,     1},
585     {165, 5120,    330, 256,     1},
586     {165, 5632,    330, 512,     1},
587     {165, 6144,    330, 512,     1},
588     {165, 6656,    330, 512,     1},
589     {165, 7168,    330, 512,     1},
590     {165, 7680,    330, 512,     1},
591     {165, 8192,    330, 512,     1},
592     {165, 8704,    330, 512,     1},
593     {165, 9216,    330, 512,     1},
594     {165, 9728,    330, 512,     1},
595     {165, 10240,   330, 1024,    1},
596     {165, 20480,   330, 2048,    1},
597     {165, 30720,   330, 1024,    1},
598     {165, 40960,   330, 40960,   0},
599     {165, 51200,   330, 51200,   0},
600     {165, 61440,   330, 61440,   0},
601     {165, 71680,   330, 71680,   0},
602     {165, 81920,   330, 81920,   0},
603     {165, 92160,   330, 92160,   0},
604     {165, 102400,  330, 102400,  0},
605     {165, 204800,  330, 204800,  0},
606     {165, 307200,  330, 307200,  0},
607     {165, 409600,  330, 409600,  0},
608     {165, 512000,  330, 512000,  0},
609     {165, 614400,  330, 614400,  0},
610     {165, 716800,  330, 716800,  0},
611     {165, 819200,  330, 819200,  0},
612     {165, 921600,  330, 921600,  0},
613     {165, 1024000, 330, 1024000, 1}
614 };
615 
616 ////////////////////////////////////////////////////////////////////////////////
617 std::vector<std::array<int, RECORD_LENGTH> > sgemm_tn_a100 = {
618     {1,   512,     3,   512,     0},
619     {1,   1024,    3,   1024,    0},
620     {1,   1536,    3,   32,      0},
621     {1,   2048,    3,   2048,    0},
622     {1,   2560,    3,   32,      0},
623     {1,   3072,    3,   128,     0},
624     {1,   3584,    3,   128,     0},
625     {1,   4096,    3,   4096,    0},
626     {1,   4608,    3,   512,     0},
627     {1,   5120,    3,   256,     0},
628     {1,   5632,    3,   64,      0},
629     {1,   6144,    3,   1024,    0},
630     {1,   6656,    3,   512,     0},
631     {1,   7168,    3,   64,      0},
632     {1,   7680,    3,   128,     0},
633     {1,   8192,    3,   8192,    0},
634     {1,   8704,    3,   32,      0},
635     {1,   9216,    3,   128,     0},
636     {1,   9728,    3,   128,     0},
637     {1,   10240,   3,   256,     0},
638     {1,   20480,   3,   4096,    0},
639     {1,   30720,   3,   2048,    0},
640     {1,   40960,   3,   4096,    0},
641     {1,   51200,   3,   512,     1},
642     {1,   61440,   3,   1024,    1},
643     {1,   71680,   3,   2048,    1},
644     {1,   81920,   3,   16384,   1},
645     {1,   92160,   3,   2048,    1},
646     {1,   102400,  3,   1024,    1},
647     {1,   204800,  3,   4096,    1},
648     {1,   307200,  3,   2048,    1},
649     {1,   409600,  3,   8192,    1},
650     {1,   512000,  3,   4096,    1},
651     {1,   614400,  3,   8192,    1},
652     {1,   716800,  3,   2048,    1},
653     {1,   819200,  3,   4096,    1},
654     {1,   921600,  3,   4096,    1},
655     {1,   1024000, 3,   8192,    1},
656     {1,   512,     4,   64,      0},
657     {1,   1024,    4,   1024,    0},
658     {1,   1536,    4,   256,     0},
659     {1,   2048,    4,   2048,    0},
660     {1,   2560,    4,   64,      0},
661     {1,   3072,    4,   32,      0},
662     {1,   3584,    4,   64,      0},
663     {1,   4096,    4,   4096,    0},
664     {1,   4608,    4,   32,      0},
665     {1,   5120,    4,   256,     0},
666     {1,   5632,    4,   32,      0},
667     {1,   6144,    4,   1024,    0},
668     {1,   6656,    4,   64,      0},
669     {1,   7168,    4,   512,     0},
670     {1,   7680,    4,   32,      0},
671     {1,   8192,    4,   8192,    0},
672     {1,   8704,    4,   64,      0},
673     {1,   9216,    4,   32,      0},
674     {1,   9728,    4,   128,     0},
675     {1,   10240,   4,   2048,    0},
676     {1,   20480,   4,   256,     0},
677     {1,   30720,   4,   1024,    0},
678     {1,   40960,   4,   8192,    0},
679     {1,   51200,   4,   128,     0},
680     {1,   61440,   4,   2048,    1},
681     {1,   71680,   4,   512,     1},
682     {1,   81920,   4,   1024,    1},
683     {1,   92160,   4,   512,     1},
684     {1,   102400,  4,   4096,    1},
685     {1,   204800,  4,   512,     1},
686     {1,   307200,  4,   2048,    1},
687     {1,   409600,  4,   8192,    1},
688     {1,   512000,  4,   512,     1},
689     {1,   614400,  4,   8192,    1},
690     {1,   716800,  4,   1024,    1},
691     {1,   819200,  4,   16384,   1},
692     {1,   921600,  4,   4096,    1},
693     {1,   1024000, 4,   2048,    1},
694     {3,   512,     6,   512,     0},
695     {3,   1024,    6,   1024,    0},
696     {3,   1536,    6,   256,     1},
697     {3,   2048,    6,   2048,    0},
698     {3,   2560,    6,   256,     1},
699     {3,   3072,    6,   128,     1},
700     {3,   3584,    6,   32,      1},
701     {3,   4096,    6,   4096,    0},
702     {3,   4608,    6,   512,     1},
703     {3,   5120,    6,   256,     1},
704     {3,   5632,    6,   256,     1},
705     {3,   6144,    6,   32,      1},
706     {3,   6656,    6,   128,     1},
707     {3,   7168,    6,   32,      1},
708     {3,   7680,    6,   32,      1},
709     {3,   8192,    6,   8192,    0},
710     {3,   8704,    6,   512,     1},
711     {3,   9216,    6,   256,     1},
712     {3,   9728,    6,   512,     1},
713     {3,   10240,   6,   256,     1},
714     {3,   20480,   6,   64,      1},
715     {3,   30720,   6,   2048,    1},
716     {3,   40960,   6,   4096,    1},
717     {3,   51200,   6,   1024,    1},
718     {3,   61440,   6,   1024,    1},
719     {3,   71680,   6,   1024,    1},
720     {3,   81920,   6,   16384,   1},
721     {3,   92160,   6,   512,     1},
722     {3,   102400,  6,   256,     1},
723     {3,   204800,  6,   8192,    1},
724     {3,   307200,  6,   512,     1},
725     {3,   409600,  6,   16384,   1},
726     {3,   512000,  6,   2048,    1},
727     {3,   614400,  6,   8192,    1},
728     {3,   716800,  6,   1024,    1},
729     {3,   819200,  6,   16384,   1},
730     {3,   921600,  6,   4096,    1},
731     {3,   1024000, 6,   8192,    1},
732     {4,   512,     10,  512,     0},
733     {4,   1024,    10,  1024,    0},
734     {4,   1536,    10,  64,      1},
735     {4,   2048,    10,  2048,    0},
736     {4,   2560,    10,  256,     1},
737     {4,   3072,    10,  32,      1},
738     {4,   3584,    10,  256,     1},
739     {4,   4096,    10,  4096,    0},
740     {4,   4608,    10,  64,      1},
741     {4,   5120,    10,  64,      1},
742     {4,   5632,    10,  64,      1},
743     {4,   6144,    10,  256,     1},
744     {4,   6656,    10,  64,      1},
745     {4,   7168,    10,  128,     1},
746     {4,   7680,    10,  64,      1},
747     {4,   8192,    10,  8192,    0},
748     {4,   8704,    10,  256,     1},
749     {4,   9216,    10,  32,      1},
750     {4,   9728,    10,  32,      1},
751     {4,   10240,   10,  512,     1},
752     {4,   20480,   10,  256,     1},
753     {4,   30720,   10,  512,     1},
754     {4,   40960,   10,  128,     1},
755     {4,   51200,   10,  512,     1},
756     {4,   61440,   10,  2048,    1},
757     {4,   71680,   10,  1024,    1},
758     {4,   81920,   10,  512,     1},
759     {4,   92160,   10,  1024,    1},
760     {4,   102400,  10,  512,     1},
761     {4,   204800,  10,  2048,    1},
762     {4,   307200,  10,  4096,    1},
763     {4,   409600,  10,  4096,    1},
764     {4,   512000,  10,  2048,    1},
765     {4,   614400,  10,  4096,    1},
766     {4,   716800,  10,  2048,    1},
767     {4,   819200,  10,  16384,   1},
768     {4,   921600,  10,  1024,    1},
769     {4,   1024000, 10,  8192,    1},
770     {6,   512,     10,  512,     0},
771     {6,   1024,    10,  1024,    0},
772     {6,   1536,    10,  256,     1},
773     {6,   2048,    10,  2048,    0},
774     {6,   2560,    10,  32,      1},
775     {6,   3072,    10,  512,     1},
776     {6,   3584,    10,  256,     1},
777     {6,   4096,    10,  4096,    0},
778     {6,   4608,    10,  64,      1},
779     {6,   5120,    10,  32,      1},
780     {6,   5632,    10,  512,     1},
781     {6,   6144,    10,  256,     1},
782     {6,   6656,    10,  32,      1},
783     {6,   7168,    10,  1024,    1},
784     {6,   7680,    10,  256,     1},
785     {6,   8192,    10,  8192,    0},
786     {6,   8704,    10,  512,     1},
787     {6,   9216,    10,  64,      1},
788     {6,   9728,    10,  64,      1},
789     {6,   10240,   10,  128,     1},
790     {6,   20480,   10,  128,     1},
791     {6,   30720,   10,  1024,    1},
792     {6,   40960,   10,  8192,    1},
793     {6,   51200,   10,  256,     1},
794     {6,   61440,   10,  1024,    1},
795     {6,   71680,   10,  128,     1},
796     {6,   81920,   10,  16384,   1},
797     {6,   92160,   10,  512,     1},
798     {6,   102400,  10,  256,     1},
799     {6,   204800,  10,  4096,    1},
800     {6,   307200,  10,  512,     1},
801     {6,   409600,  10,  4096,    1},
802     {6,   512000,  10,  1024,    1},
803     {6,   614400,  10,  4096,    1},
804     {6,   716800,  10,  4096,    1},
805     {6,   819200,  10,  16384,   1},
806     {6,   921600,  10,  1024,    1},
807     {6,   1024000, 10,  8192,    1},
808     {12,  512,     15,  512,     0},
809     {12,  1024,    15,  1024,    0},
810     {12,  1536,    15,  512,     1},
811     {12,  2048,    15,  2048,    0},
812     {12,  2560,    15,  512,     1},
813     {12,  3072,    15,  64,      1},
814     {12,  3584,    15,  256,     1},
815     {12,  4096,    15,  4096,    0},
816     {12,  4608,    15,  32,      1},
817     {12,  5120,    15,  256,     1},
818     {12,  5632,    15,  512,     1},
819     {12,  6144,    15,  512,     1},
820     {12,  6656,    15,  512,     1},
821     {12,  7168,    15,  512,     1},
822     {12,  7680,    15,  256,     1},
823     {12,  8192,    15,  512,     1},
824     {12,  8704,    15,  512,     1},
825     {12,  9216,    15,  1024,    1},
826     {12,  9728,    15,  32,      1},
827     {12,  10240,   15,  128,     1},
828     {12,  20480,   15,  32,      1},
829     {12,  30720,   15,  64,      1},
830     {12,  40960,   15,  2048,    1},
831     {12,  51200,   15,  1024,    1},
832     {12,  61440,   15,  4096,    1},
833     {12,  71680,   15,  2048,    1},
834     {12,  81920,   15,  1024,    1},
835     {12,  92160,   15,  512,     1},
836     {12,  102400,  15,  1024,    1},
837     {12,  204800,  15,  4096,    1},
838     {12,  307200,  15,  1024,    1},
839     {12,  409600,  15,  8192,    1},
840     {12,  512000,  15,  2048,    1},
841     {12,  614400,  15,  8192,    1},
842     {12,  716800,  15,  4096,    1},
843     {12,  819200,  15,  32768,   1},
844     {12,  921600,  15,  4096,    1},
845     {12,  1024000, 15,  8192,    1},
846     {11,  512,     20,  512,     0},
847     {11,  1024,    20,  256,     1},
848     {11,  1536,    20,  32,      1},
849     {11,  2048,    20,  2048,    0},
850     {11,  2560,    20,  256,     1},
851     {11,  3072,    20,  512,     1},
852     {11,  3584,    20,  512,     1},
853     {11,  4096,    20,  4096,    0},
854     {11,  4608,    20,  128,     1},
855     {11,  5120,    20,  32,      1},
856     {11,  5632,    20,  512,     1},
857     {11,  6144,    20,  512,     1},
858     {11,  6656,    20,  128,     1},
859     {11,  7168,    20,  256,     1},
860     {11,  7680,    20,  512,     1},
861     {11,  8192,    20,  8192,    0},
862     {11,  8704,    20,  512,     1},
863     {11,  9216,    20,  64,      1},
864     {11,  9728,    20,  64,      1},
865     {11,  10240,   20,  512,     1},
866     {11,  20480,   20,  2048,    1},
867     {11,  30720,   20,  256,     1},
868     {11,  40960,   20,  2048,    1},
869     {11,  51200,   20,  256,     1},
870     {11,  61440,   20,  4096,    1},
871     {11,  71680,   20,  1024,    1},
872     {11,  81920,   20,  2048,    1},
873     {11,  92160,   20,  1024,    1},
874     {11,  102400,  20,  4096,    1},
875     {11,  204800,  20,  2048,    1},
876     {11,  307200,  20,  4096,    1},
877     {11,  409600,  20,  8192,    1},
878     {11,  512000,  20,  2048,    1},
879     {11,  614400,  20,  8192,    1},
880     {11,  716800,  20,  4096,    1},
881     {11,  819200,  20,  32768,   1},
882     {11,  921600,  20,  4096,    1},
883     {11,  1024000, 20,  8192,    1},
884     {16,  512,     21,  512,     0},
885     {16,  1024,    21,  32,      1},
886     {16,  1536,    21,  512,     1},
887     {16,  2048,    21,  2048,    0},
888     {16,  2560,    21,  32,      1},
889     {16,  3072,    21,  128,     1},
890     {16,  3584,    21,  512,     1},
891     {16,  4096,    21,  4096,    0},
892     {16,  4608,    21,  512,     1},
893     {16,  5120,    21,  32,      1},
894     {16,  5632,    21,  512,     1},
895     {16,  6144,    21,  2048,    1},
896     {16,  6656,    21,  512,     1},
897     {16,  7168,    21,  512,     1},
898     {16,  7680,    21,  64,      1},
899     {16,  8192,    21,  128,     1},
900     {16,  8704,    21,  256,     1},
901     {16,  9216,    21,  512,     1},
902     {16,  9728,    21,  64,      1},
903     {16,  10240,   21,  32,      1},
904     {16,  20480,   21,  256,     1},
905     {16,  30720,   21,  256,     1},
906     {16,  40960,   21,  4096,    1},
907     {16,  51200,   21,  512,     1},
908     {16,  61440,   21,  2048,    1},
909     {16,  71680,   21,  512,     1},
910     {16,  81920,   21,  4096,    1},
911     {16,  92160,   21,  2048,    1},
912     {16,  102400,  21,  4096,    1},
913     {16,  204800,  21,  4096,    1},
914     {16,  307200,  21,  4096,    1},
915     {16,  409600,  21,  8192,    1},
916     {16,  512000,  21,  4096,    1},
917     {16,  614400,  21,  8192,    1},
918     {16,  716800,  21,  4096,    1},
919     {16,  819200,  21,  32768,   1},
920     {16,  921600,  21,  512,     1},
921     {16,  1024000, 21,  8192,    1},
922     {25,  512,     28,  32,      1},
923     {25,  1024,    28,  1024,    0},
924     {25,  1536,    28,  64,      1},
925     {25,  2048,    28,  2048,    0},
926     {25,  2560,    28,  64,      1},
927     {25,  3072,    28,  512,     1},
928     {25,  3584,    28,  256,     1},
929     {25,  4096,    28,  2048,    1},
930     {25,  4608,    28,  256,     1},
931     {25,  5120,    28,  64,      1},
932     {25,  5632,    28,  512,     1},
933     {25,  6144,    28,  128,     1},
934     {25,  6656,    28,  512,     1},
935     {25,  7168,    28,  256,     1},
936     {25,  7680,    28,  512,     1},
937     {25,  8192,    28,  8192,    0},
938     {25,  8704,    28,  128,     1},
939     {25,  9216,    28,  256,     1},
940     {25,  9728,    28,  64,      1},
941     {25,  10240,   28,  256,     1},
942     {25,  20480,   28,  512,     1},
943     {25,  30720,   28,  1024,    1},
944     {25,  40960,   28,  4096,    1},
945     {25,  51200,   28,  1024,    1},
946     {25,  61440,   28,  512,     1},
947     {25,  71680,   28,  2048,    1},
948     {25,  81920,   28,  2048,    1},
949     {25,  92160,   28,  512,     1},
950     {25,  102400,  28,  4096,    1},
951     {25,  204800,  28,  512,     1},
952     {25,  307200,  28,  307200,  0},
953     {25,  409600,  28,  409600,  0},
954     {25,  512000,  28,  512000,  0},
955     {25,  614400,  28,  614400,  0},
956     {25,  716800,  28,  716800,  0},
957     {25,  819200,  28,  819200,  0},
958     {25,  921600,  28,  921600,  0},
959     {25,  1024000, 28,  1024000, 0},
960     {24,  512,     35,  512,     0},
961     {24,  1024,    35,  1024,    0},
962     {24,  1536,    35,  64,      1},
963     {24,  2048,    35,  2048,    0},
964     {24,  2560,    35,  128,     1},
965     {24,  3072,    35,  256,     1},
966     {24,  3584,    35,  32,      1},
967     {24,  4096,    35,  64,      1},
968     {24,  4608,    35,  32,      1},
969     {24,  5120,    35,  32,      1},
970     {24,  5632,    35,  128,     1},
971     {24,  6144,    35,  256,     1},
972     {24,  6656,    35,  512,     1},
973     {24,  7168,    35,  128,     1},
974     {24,  7680,    35,  32,      1},
975     {24,  8192,    35,  8192,    0},
976     {24,  8704,    35,  512,     1},
977     {24,  9216,    35,  1024,    1},
978     {24,  9728,    35,  32,      1},
979     {24,  10240,   35,  2048,    1},
980     {24,  20480,   35,  4096,    1},
981     {24,  30720,   35,  1024,    1},
982     {24,  40960,   35,  512,     1},
983     {24,  51200,   35,  512,     1},
984     {24,  61440,   35,  4096,    1},
985     {24,  71680,   35,  1024,    1},
986     {24,  81920,   35,  2048,    1},
987     {24,  92160,   35,  2048,    1},
988     {24,  102400,  35,  2048,    1},
989     {24,  204800,  35,  4096,    1},
990     {24,  307200,  35,  4096,    1},
991     {24,  409600,  35,  409600,  0},
992     {24,  512000,  35,  512000,  0},
993     {24,  614400,  35,  614400,  0},
994     {24,  716800,  35,  716800,  0},
995     {24,  819200,  35,  819200,  0},
996     {24,  921600,  35,  921600,  0},
997     {24,  1024000, 35,  1024000, 0},
998     {33,  512,     36,  512,     0},
999     {33,  1024,    36,  1024,    0},
1000     {33,  1536,    36,  512,     1},
1001     {33,  2048,    36,  32,      1},
1002     {33,  2560,    36,  32,      1},
1003     {33,  3072,    36,  32,      1},
1004     {33,  3584,    36,  128,     1},
1005     {33,  4096,    36,  256,     1},
1006     {33,  4608,    36,  64,      1},
1007     {33,  5120,    36,  256,     1},
1008     {33,  5632,    36,  256,     1},
1009     {33,  6144,    36,  2048,    1},
1010     {33,  6656,    36,  32,      1},
1011     {33,  7168,    36,  1024,    1},
1012     {33,  7680,    36,  512,     1},
1013     {33,  8192,    36,  4096,    1},
1014     {33,  8704,    36,  128,     1},
1015     {33,  9216,    36,  128,     1},
1016     {33,  9728,    36,  512,     1},
1017     {33,  10240,   36,  32,      1},
1018     {33,  20480,   36,  256,     1},
1019     {33,  30720,   36,  1024,    1},
1020     {33,  40960,   36,  2048,    1},
1021     {33,  51200,   36,  1024,    1},
1022     {33,  61440,   36,  2048,    1},
1023     {33,  71680,   36,  1024,    1},
1024     {33,  81920,   36,  8192,    1},
1025     {33,  92160,   36,  1024,    1},
1026     {33,  102400,  36,  2048,    1},
1027     {33,  204800,  36,  8192,    1},
1028     {33,  307200,  36,  4096,    1},
1029     {33,  409600,  36,  409600,  0},
1030     {33,  512000,  36,  512000,  0},
1031     {33,  614400,  36,  614400,  0},
1032     {33,  716800,  36,  716800,  0},
1033     {33,  819200,  36,  819200,  0},
1034     {33,  921600,  36,  921600,  0},
1035     {33,  1024000, 36,  1024000, 0},
1036     {42,  512,     45,  512,     0},
1037     {42,  1024,    45,  1024,    0},
1038     {42,  1536,    45,  32,      1},
1039     {42,  2048,    45,  2048,    0},
1040     {42,  2560,    45,  64,      1},
1041     {42,  3072,    45,  64,      1},
1042     {42,  3584,    45,  64,      1},
1043     {42,  4096,    45,  32,      1},
1044     {42,  4608,    45,  512,     1},
1045     {42,  5120,    45,  1024,    1},
1046     {42,  5632,    45,  32,      1},
1047     {42,  6144,    45,  64,      1},
1048     {42,  6656,    45,  64,      1},
1049     {42,  7168,    45,  1024,    1},
1050     {42,  7680,    45,  256,     1},
1051     {42,  8192,    45,  128,     1},
1052     {42,  8704,    45,  512,     1},
1053     {42,  9216,    45,  128,     1},
1054     {42,  9728,    45,  128,     1},
1055     {42,  10240,   45,  32,      1},
1056     {42,  20480,   45,  1024,    1},
1057     {42,  30720,   45,  2048,    1},
1058     {42,  40960,   45,  2048,    1},
1059     {42,  51200,   45,  1024,    1},
1060     {42,  61440,   45,  2048,    1},
1061     {42,  71680,   45,  2048,    1},
1062     {42,  81920,   45,  8192,    1},
1063     {42,  92160,   45,  2048,    1},
1064     {42,  102400,  45,  4096,    1},
1065     {42,  204800,  45,  512,     1},
1066     {42,  307200,  45,  307200,  0},
1067     {42,  409600,  45,  409600,  0},
1068     {42,  512000,  45,  512000,  0},
1069     {42,  614400,  45,  614400,  0},
1070     {42,  716800,  45,  716800,  0},
1071     {42,  819200,  45,  819200,  0},
1072     {42,  921600,  45,  921600,  0},
1073     {42,  1024000, 45,  1024000, 0},
1074     {43,  512,     56,  512,     0},
1075     {43,  1024,    56,  1024,    0},
1076     {43,  1536,    56,  32,      1},
1077     {43,  2048,    56,  2048,    0},
1078     {43,  2560,    56,  32,      1},
1079     {43,  3072,    56,  512,     1},
1080     {43,  3584,    56,  256,     1},
1081     {43,  4096,    56,  4096,    0},
1082     {43,  4608,    56,  128,     1},
1083     {43,  5120,    56,  512,     1},
1084     {43,  5632,    56,  256,     1},
1085     {43,  6144,    56,  512,     1},
1086     {43,  6656,    56,  32,      1},
1087     {43,  7168,    56,  128,     1},
1088     {43,  7680,    56,  512,     1},
1089     {43,  8192,    56,  2048,    1},
1090     {43,  8704,    56,  64,      1},
1091     {43,  9216,    56,  64,      1},
1092     {43,  9728,    56,  128,     1},
1093     {43,  10240,   56,  2048,    1},
1094     {43,  20480,   56,  512,     1},
1095     {43,  30720,   56,  2048,    1},
1096     {43,  40960,   56,  4096,    1},
1097     {43,  51200,   56,  2048,    1},
1098     {43,  61440,   56,  4096,    1},
1099     {43,  71680,   56,  1024,    1},
1100     {43,  81920,   56,  16384,   1},
1101     {43,  92160,   56,  2048,    1},
1102     {43,  102400,  56,  4096,    1},
1103     {43,  204800,  56,  1024,    1},
1104     {43,  307200,  56,  307200,  0},
1105     {43,  409600,  56,  409600,  0},
1106     {43,  512000,  56,  512000,  0},
1107     {43,  614400,  56,  614400,  0},
1108     {43,  716800,  56,  716800,  0},
1109     {43,  819200,  56,  819200,  0},
1110     {43,  921600,  56,  921600,  0},
1111     {43,  1024000, 56,  1024000, 0},
1112     {126, 512,     84,  512,     0},
1113     {126, 1024,    84,  1024,    0},
1114     {126, 1536,    84,  256,     1},
1115     {126, 2048,    84,  2048,    0},
1116     {126, 2560,    84,  32,      1},
1117     {126, 3072,    84,  256,     1},
1118     {126, 3584,    84,  512,     1},
1119     {126, 4096,    84,  4096,    1},
1120     {126, 4608,    84,  256,     1},
1121     {126, 5120,    84,  1024,    1},
1122     {126, 5632,    84,  512,     1},
1123     {126, 6144,    84,  1024,    1},
1124     {126, 6656,    84,  256,     1},
1125     {126, 7168,    84,  512,     1},
1126     {126, 7680,    84,  256,     1},
1127     {126, 8192,    84,  2048,    1},
1128     {126, 8704,    84,  256,     1},
1129     {126, 9216,    84,  1024,    1},
1130     {126, 9728,    84,  128,     1},
1131     {126, 10240,   84,  2048,    1},
1132     {126, 20480,   84,  2048,    1},
1133     {126, 30720,   84,  2048,    1},
1134     {126, 40960,   84,  8192,    1},
1135     {126, 51200,   84,  512,     1},
1136     {126, 61440,   84,  1024,    1},
1137     {126, 71680,   84,  512,     1},
1138     {126, 81920,   84,  16384,   1},
1139     {126, 92160,   84,  512,     0},
1140     {126, 102400,  84,  2048,    0},
1141     {126, 204800,  84,  512,     0},
1142     {126, 307200,  84,  307200,  0},
1143     {126, 409600,  84,  409600,  0},
1144     {126, 512000,  84,  512000,  0},
1145     {126, 614400,  84,  614400,  0},
1146     {126, 716800,  84,  716800,  0},
1147     {126, 819200,  84,  32768,   0},
1148     {126, 921600,  84,  921600,  0},
1149     {126, 1024000, 84,  256,     0},
1150     {210, 512,     120, 512,     0},
1151     {210, 1024,    120, 1024,    0},
1152     {210, 1536,    120, 256,     1},
1153     {210, 2048,    120, 2048,    1},
1154     {210, 2560,    120, 512,     1},
1155     {210, 3072,    120, 1024,    1},
1156     {210, 3584,    120, 512,     1},
1157     {210, 4096,    120, 512,     1},
1158     {210, 4608,    120, 512,     1},
1159     {210, 5120,    120, 1024,    1},
1160     {210, 5632,    120, 512,     1},
1161     {210, 6144,    120, 1024,    1},
1162     {210, 6656,    120, 256,     1},
1163     {210, 7168,    120, 512,     1},
1164     {210, 7680,    120, 512,     1},
1165     {210, 8192,    120, 4096,    1},
1166     {210, 8704,    120, 256,     1},
1167     {210, 9216,    120, 1024,    1},
1168     {210, 9728,    120, 512,     1},
1169     {210, 10240,   120, 512,     1},
1170     {210, 20480,   120, 1024,    0},
1171     {210, 30720,   120, 512,     1},
1172     {210, 40960,   120, 8192,    0},
1173     {210, 51200,   120, 51200,   0},
1174     {210, 61440,   120, 1024,    0},
1175     {210, 71680,   120, 71680,   0},
1176     {210, 81920,   120, 81920,   0},
1177     {210, 92160,   120, 92160,   0},
1178     {210, 102400,  120, 102400,  0},
1179     {210, 204800,  120, 204800,  0},
1180     {210, 307200,  120, 307200,  0},
1181     {210, 409600,  120, 409600,  0},
1182     {210, 512000,  120, 512000,  0},
1183     {210, 614400,  120, 614400,  0},
1184     {210, 716800,  120, 128,     0},
1185     {210, 819200,  120, 128,     0},
1186     {210, 921600,  120, 128,     0},
1187     {210, 1024000, 120, 128,     0},
1188     {330, 512,     165, 512,     0},
1189     {330, 1024,    165, 1024,    0},
1190     {330, 1536,    165, 256,     1},
1191     {330, 2048,    165, 1024,    1},
1192     {330, 2560,    165, 256,     1},
1193     {330, 3072,    165, 256,     1},
1194     {330, 3584,    165, 512,     1},
1195     {330, 4096,    165, 1024,    1},
1196     {330, 4608,    165, 512,     1},
1197     {330, 5120,    165, 512,     1},
1198     {330, 5632,    165, 512,     1},
1199     {330, 6144,    165, 1024,    1},
1200     {330, 6656,    165, 512,     1},
1201     {330, 7168,    165, 512,     1},
1202     {330, 7680,    165, 512,     1},
1203     {330, 8192,    165, 8192,    1},
1204     {330, 8704,    165, 256,     0},
1205     {330, 9216,    165, 128,     0},
1206     {330, 9728,    165, 512,     1},
1207     {330, 10240,   165, 512,     1},
1208     {330, 20480,   165, 20480,   0},
1209     {330, 30720,   165, 1024,    0},
1210     {330, 40960,   165, 4096,    0},
1211     {330, 51200,   165, 51200,   0},
1212     {330, 61440,   165, 61440,   0},
1213     {330, 71680,   165, 512,     0},
1214     {330, 81920,   165, 512,     0},
1215     {330, 92160,   165, 128,     0},
1216     {330, 102400,  165, 102400,  0},
1217     {330, 204800,  165, 204800,  0},
1218     {330, 307200,  165, 307200,  0},
1219     {330, 409600,  165, 128,     0},
1220     {330, 512000,  165, 128,     0},
1221     {330, 614400,  165, 128,     0},
1222     {330, 716800,  165, 128,     0},
1223     {330, 819200,  165, 128,     0},
1224     {330, 921600,  165, 128,     0},
1225     {330, 1024000, 165, 128,     0}
1226 };
1227 
1228 ////////////////////////////////////////////////////////////////////////////////
1229 std::vector<std::array<int, RECORD_LENGTH> > dgemm_nn_a100 = {
1230     {3,   512,     1,   64,      0},
1231     {3,   1024,    1,   512,     0},
1232     {3,   1536,    1,   512,     0},
1233     {3,   2048,    1,   2048,    0},
1234     {3,   2560,    1,   256,     0},
1235     {3,   3072,    1,   64,      0},
1236     {3,   3584,    1,   32,      0},
1237     {3,   4096,    1,   512,     0},
1238     {3,   4608,    1,   256,     0},
1239     {3,   5120,    1,   1024,    0},
1240     {3,   5632,    1,   256,     0},
1241     {3,   6144,    1,   512,     0},
1242     {3,   6656,    1,   256,     0},
1243     {3,   7168,    1,   512,     0},
1244     {3,   7680,    1,   256,     0},
1245     {3,   8192,    1,   128,     0},
1246     {3,   8704,    1,   128,     0},
1247     {3,   9216,    1,   1024,    0},
1248     {3,   9728,    1,   32,      0},
1249     {3,   10240,   1,   128,     0},
1250     {3,   20480,   1,   1024,    0},
1251     {3,   30720,   1,   64,      0},
1252     {3,   40960,   1,   128,     0},
1253     {3,   51200,   1,   2048,    0},
1254     {3,   61440,   1,   1024,    0},
1255     {3,   71680,   1,   128,     0},
1256     {3,   81920,   1,   64,      0},
1257     {3,   92160,   1,   512,     0},
1258     {3,   102400,  1,   512,     0},
1259     {3,   204800,  1,   128,     1},
1260     {3,   307200,  1,   4096,    1},
1261     {3,   409600,  1,   1024,    1},
1262     {3,   512000,  1,   4096,    1},
1263     {3,   614400,  1,   1024,    0},
1264     {3,   716800,  1,   32,      0},
1265     {3,   819200,  1,   16384,   1},
1266     {3,   921600,  1,   2048,    1},
1267     {3,   1024000, 1,   8192,    1},
1268     {4,   512,     1,   32,      0},
1269     {4,   1024,    1,   1024,    0},
1270     {4,   1536,    1,   64,      0},
1271     {4,   2048,    1,   64,      0},
1272     {4,   2560,    1,   512,     0},
1273     {4,   3072,    1,   512,     0},
1274     {4,   3584,    1,   32,      0},
1275     {4,   4096,    1,   512,     0},
1276     {4,   4608,    1,   64,      0},
1277     {4,   5120,    1,   512,     0},
1278     {4,   5632,    1,   128,     0},
1279     {4,   6144,    1,   128,     0},
1280     {4,   6656,    1,   32,      0},
1281     {4,   7168,    1,   256,     0},
1282     {4,   7680,    1,   512,     0},
1283     {4,   8192,    1,   1024,    0},
1284     {4,   8704,    1,   128,     0},
1285     {4,   9216,    1,   512,     0},
1286     {4,   9728,    1,   256,     0},
1287     {4,   10240,   1,   1024,    0},
1288     {4,   20480,   1,   1024,    0},
1289     {4,   30720,   1,   512,     0},
1290     {4,   40960,   1,   128,     0},
1291     {4,   51200,   1,   32,      0},
1292     {4,   61440,   1,   64,      0},
1293     {4,   71680,   1,   64,      0},
1294     {4,   81920,   1,   64,      0},
1295     {4,   92160,   1,   64,      0},
1296     {4,   102400,  1,   4096,    0},
1297     {4,   204800,  1,   2048,    1},
1298     {4,   307200,  1,   4096,    1},
1299     {4,   409600,  1,   16384,   1},
1300     {4,   512000,  1,   4096,    1},
1301     {4,   614400,  1,   2048,    0},
1302     {4,   716800,  1,   1024,    1},
1303     {4,   819200,  1,   32768,   1},
1304     {4,   921600,  1,   4096,    1},
1305     {4,   1024000, 1,   1024,    0},
1306     {6,   512,     3,   512,     0},
1307     {6,   1024,    3,   1024,    0},
1308     {6,   1536,    3,   32,      1},
1309     {6,   2048,    3,   2048,    0},
1310     {6,   2560,    3,   512,     1},
1311     {6,   3072,    3,   64,      1},
1312     {6,   3584,    3,   32,      1},
1313     {6,   4096,    3,   4096,    0},
1314     {6,   4608,    3,   256,     1},
1315     {6,   5120,    3,   256,     1},
1316     {6,   5632,    3,   256,     1},
1317     {6,   6144,    3,   64,      1},
1318     {6,   6656,    3,   128,     1},
1319     {6,   7168,    3,   512,     1},
1320     {6,   7680,    3,   512,     1},
1321     {6,   8192,    3,   8192,    0},
1322     {6,   8704,    3,   128,     1},
1323     {6,   9216,    3,   256,     1},
1324     {6,   9728,    3,   512,     1},
1325     {6,   10240,   3,   1024,    1},
1326     {6,   20480,   3,   1024,    1},
1327     {6,   30720,   3,   128,     1},
1328     {6,   40960,   3,   1024,    1},
1329     {6,   51200,   3,   2048,    1},
1330     {6,   61440,   3,   2048,    1},
1331     {6,   71680,   3,   2048,    1},
1332     {6,   81920,   3,   512,     1},
1333     {6,   92160,   3,   256,     1},
1334     {6,   102400,  3,   4096,    1},
1335     {6,   204800,  3,   512,     1},
1336     {6,   307200,  3,   512,     1},
1337     {6,   409600,  3,   4096,    1},
1338     {6,   512000,  3,   4096,    1},
1339     {6,   614400,  3,   4096,    1},
1340     {6,   716800,  3,   1024,    1},
1341     {6,   819200,  3,   16384,   1},
1342     {6,   921600,  3,   4096,    1},
1343     {6,   1024000, 3,   8192,    1},
1344     {10,  512,     4,   512,     0},
1345     {10,  1024,    4,   1024,    0},
1346     {10,  1536,    4,   256,     1},
1347     {10,  2048,    4,   2048,    0},
1348     {10,  2560,    4,   64,      1},
1349     {10,  3072,    4,   64,      1},
1350     {10,  3584,    4,   32,      1},
1351     {10,  4096,    4,   4096,    0},
1352     {10,  4608,    4,   512,     1},
1353     {10,  5120,    4,   512,     1},
1354     {10,  5632,    4,   256,     1},
1355     {10,  6144,    4,   32,      1},
1356     {10,  6656,    4,   512,     1},
1357     {10,  7168,    4,   1024,    1},
1358     {10,  7680,    4,   512,     1},
1359     {10,  8192,    4,   8192,    0},
1360     {10,  8704,    4,   128,     1},
1361     {10,  9216,    4,   64,      1},
1362     {10,  9728,    4,   512,     1},
1363     {10,  10240,   4,   512,     1},
1364     {10,  20480,   4,   512,     1},
1365     {10,  30720,   4,   128,     1},
1366     {10,  40960,   4,   128,     1},
1367     {10,  51200,   4,   2048,    1},
1368     {10,  61440,   4,   4096,    1},
1369     {10,  71680,   4,   128,     1},
1370     {10,  81920,   4,   1024,    1},
1371     {10,  92160,   4,   1024,    1},
1372     {10,  102400,  4,   4096,    1},
1373     {10,  204800,  4,   4096,    1},
1374     {10,  307200,  4,   2048,    1},
1375     {10,  409600,  4,   16384,   1},
1376     {10,  512000,  4,   4096,    1},
1377     {10,  614400,  4,   8192,    1},
1378     {10,  716800,  4,   4096,    1},
1379     {10,  819200,  4,   32768,   1},
1380     {10,  921600,  4,   4096,    1},
1381     {10,  1024000, 4,   8192,    1},
1382     {10,  512,     6,   512,     0},
1383     {10,  1024,    6,   1024,    0},
1384     {10,  1536,    6,   512,     1},
1385     {10,  2048,    6,   2048,    0},
1386     {10,  2560,    6,   32,      1},
1387     {10,  3072,    6,   512,     1},
1388     {10,  3584,    6,   64,      1},
1389     {10,  4096,    6,   4096,    0},
1390     {10,  4608,    6,   512,     1},
1391     {10,  5120,    6,   128,     1},
1392     {10,  5632,    6,   64,      1},
1393     {10,  6144,    6,   256,     1},
1394     {10,  6656,    6,   512,     1},
1395     {10,  7168,    6,   128,     1},
1396     {10,  7680,    6,   512,     1},
1397     {10,  8192,    6,   8192,    0},
1398     {10,  8704,    6,   512,     1},
1399     {10,  9216,    6,   256,     1},
1400     {10,  9728,    6,   128,     1},
1401     {10,  10240,   6,   256,     1},
1402     {10,  20480,   6,   256,     1},
1403     {10,  30720,   6,   128,     1},
1404     {10,  40960,   6,   64,      1},
1405     {10,  51200,   6,   1024,    1},
1406     {10,  61440,   6,   512,     1},
1407     {10,  71680,   6,   512,     1},
1408     {10,  81920,   6,   16384,   1},
1409     {10,  92160,   6,   1024,    1},
1410     {10,  102400,  6,   1024,    1},
1411     {10,  204800,  6,   4096,    1},
1412     {10,  307200,  6,   2048,    1},
1413     {10,  409600,  6,   8192,    1},
1414     {10,  512000,  6,   1024,    1},
1415     {10,  614400,  6,   8192,    1},
1416     {10,  716800,  6,   4096,    1},
1417     {10,  819200,  6,   32768,   1},
1418     {10,  921600,  6,   4096,    1},
1419     {10,  1024000, 6,   8192,    1},
1420     {15,  512,     12,  512,     0},
1421     {15,  1024,    12,  1024,    0},
1422     {15,  1536,    12,  64,      1},
1423     {15,  2048,    12,  2048,    0},
1424     {15,  2560,    12,  256,     1},
1425     {15,  3072,    12,  512,     1},
1426     {15,  3584,    12,  64,      1},
1427     {15,  4096,    12,  4096,    0},
1428     {15,  4608,    12,  256,     1},
1429     {15,  5120,    12,  512,     1},
1430     {15,  5632,    12,  512,     0},
1431     {15,  6144,    12,  256,     1},
1432     {15,  6656,    12,  32,      1},
1433     {15,  7168,    12,  256,     0},
1434     {15,  7680,    12,  512,     1},
1435     {15,  8192,    12,  8192,    0},
1436     {15,  8704,    12,  32,      1},
1437     {15,  9216,    12,  64,      1},
1438     {15,  9728,    12,  256,     1},
1439     {15,  10240,   12,  32,      1},
1440     {15,  20480,   12,  32,      1},
1441     {15,  30720,   12,  2048,    1},
1442     {15,  40960,   12,  2048,    1},
1443     {15,  51200,   12,  64,      1},
1444     {15,  61440,   12,  64,      1},
1445     {15,  71680,   12,  512,     1},
1446     {15,  81920,   12,  64,      1},
1447     {15,  92160,   12,  512,     1},
1448     {15,  102400,  12,  512,     1},
1449     {15,  204800,  12,  8192,    1},
1450     {15,  307200,  12,  128,     1},
1451     {15,  409600,  12,  4096,    1},
1452     {15,  512000,  12,  4096,    1},
1453     {15,  614400,  12,  4096,    1},
1454     {15,  716800,  12,  4096,    1},
1455     {15,  819200,  12,  32768,   1},
1456     {15,  921600,  12,  512,     1},
1457     {15,  1024000, 12,  8192,    1},
1458     {20,  512,     11,  512,     0},
1459     {20,  1024,    11,  1024,    0},
1460     {20,  1536,    11,  256,     0},
1461     {20,  2048,    11,  2048,    0},
1462     {20,  2560,    11,  128,     0},
1463     {20,  3072,    11,  64,      1},
1464     {20,  3584,    11,  32,      0},
1465     {20,  4096,    11,  4096,    0},
1466     {20,  4608,    11,  256,     1},
1467     {20,  5120,    11,  64,      1},
1468     {20,  5632,    11,  256,     1},
1469     {20,  6144,    11,  128,     1},
1470     {20,  6656,    11,  32,      1},
1471     {20,  7168,    11,  256,     1},
1472     {20,  7680,    11,  64,      1},
1473     {20,  8192,    11,  8192,    0},
1474     {20,  8704,    11,  256,     1},
1475     {20,  9216,    11,  256,     1},
1476     {20,  9728,    11,  256,     1},
1477     {20,  10240,   11,  64,      1},
1478     {20,  20480,   11,  2048,    1},
1479     {20,  30720,   11,  2048,    1},
1480     {20,  40960,   11,  512,     1},
1481     {20,  51200,   11,  128,     1},
1482     {20,  61440,   11,  2048,    1},
1483     {20,  71680,   11,  128,     1},
1484     {20,  81920,   11,  16384,   1},
1485     {20,  92160,   11,  64,      1},
1486     {20,  102400,  11,  64,      1},
1487     {20,  204800,  11,  2048,    1},
1488     {20,  307200,  11,  256,     1},
1489     {20,  409600,  11,  16384,   1},
1490     {20,  512000,  11,  256,     1},
1491     {20,  614400,  11,  8192,    1},
1492     {20,  716800,  11,  512,     1},
1493     {20,  819200,  11,  32768,   1},
1494     {20,  921600,  11,  512,     0},
1495     {20,  1024000, 11,  8192,    0},
1496     {21,  512,     16,  512,     0},
1497     {21,  1024,    16,  1024,    0},
1498     {21,  1536,    16,  256,     0},
1499     {21,  2048,    16,  2048,    0},
1500     {21,  2560,    16,  128,     0},
1501     {21,  3072,    16,  64,      1},
1502     {21,  3584,    16,  64,      0},
1503     {21,  4096,    16,  4096,    0},
1504     {21,  4608,    16,  128,     0},
1505     {21,  5120,    16,  256,     0},
1506     {21,  5632,    16,  32,      0},
1507     {21,  6144,    16,  128,     0},
1508     {21,  6656,    16,  64,      1},
1509     {21,  7168,    16,  128,     1},
1510     {21,  7680,    16,  32,      0},
1511     {21,  8192,    16,  4096,    1},
1512     {21,  8704,    16,  64,      0},
1513     {21,  9216,    16,  64,      1},
1514     {21,  9728,    16,  512,     1},
1515     {21,  10240,   16,  256,     0},
1516     {21,  20480,   16,  512,     1},
1517     {21,  30720,   16,  32,      1},
1518     {21,  40960,   16,  64,      1},
1519     {21,  51200,   16,  64,      1},
1520     {21,  61440,   16,  32,      1},
1521     {21,  71680,   16,  1024,    1},
1522     {21,  81920,   16,  128,     1},
1523     {21,  92160,   16,  512,     1},
1524     {21,  102400,  16,  256,     1},
1525     {21,  204800,  16,  256,     1},
1526     {21,  307200,  16,  128,     1},
1527     {21,  409600,  16,  16384,   1},
1528     {21,  512000,  16,  256,     1},
1529     {21,  614400,  16,  8192,    1},
1530     {21,  716800,  16,  1024,    1},
1531     {21,  819200,  16,  32768,   1},
1532     {21,  921600,  16,  512,     1},
1533     {21,  1024000, 16,  1024,    0},
1534     {28,  512,     25,  64,      0},
1535     {28,  1024,    25,  256,     0},
1536     {28,  1536,    25,  64,      0},
1537     {28,  2048,    25,  2048,    0},
1538     {28,  2560,    25,  32,      0},
1539     {28,  3072,    25,  64,      0},
1540     {28,  3584,    25,  64,      0},
1541     {28,  4096,    25,  64,      0},
1542     {28,  4608,    25,  128,     0},
1543     {28,  5120,    25,  128,     0},
1544     {28,  5632,    25,  128,     1},
1545     {28,  6144,    25,  256,     0},
1546     {28,  6656,    25,  512,     0},
1547     {28,  7168,    25,  256,     0},
1548     {28,  7680,    25,  128,     0},
1549     {28,  8192,    25,  8192,    0},
1550     {28,  8704,    25,  64,      1},
1551     {28,  9216,    25,  1024,    0},
1552     {28,  9728,    25,  64,      0},
1553     {28,  10240,   25,  256,     1},
1554     {28,  20480,   25,  128,     1},
1555     {28,  30720,   25,  32,      1},
1556     {28,  40960,   25,  2048,    1},
1557     {28,  51200,   25,  2048,    1},
1558     {28,  61440,   25,  4096,    1},
1559     {28,  71680,   25,  512,     1},
1560     {28,  81920,   25,  8192,    1},
1561     {28,  92160,   25,  256,     1},
1562     {28,  102400,  25,  4096,    1},
1563     {28,  204800,  25,  8192,    1},
1564     {28,  307200,  25,  2048,    0},
1565     {28,  409600,  25,  4096,    0},
1566     {28,  512000,  25,  256,     0},
1567     {28,  614400,  25,  2048,    0},
1568     {28,  716800,  25,  512,     0},
1569     {28,  819200,  25,  8192,    0},
1570     {28,  921600,  25,  1024,    0},
1571     {28,  1024000, 25,  1024,    0},
1572     {35,  512,     24,  512,     0},
1573     {35,  1024,    24,  1024,    0},
1574     {35,  1536,    24,  512,     0},
1575     {35,  2048,    24,  2048,    0},
1576     {35,  2560,    24,  128,     0},
1577     {35,  3072,    24,  128,     0},
1578     {35,  3584,    24,  64,      0},
1579     {35,  4096,    24,  256,     1},
1580     {35,  4608,    24,  64,      1},
1581     {35,  5120,    24,  512,     1},
1582     {35,  5632,    24,  32,      1},
1583     {35,  6144,    24,  32,      1},
1584     {35,  6656,    24,  32,      1},
1585     {35,  7168,    24,  256,     1},
1586     {35,  7680,    24,  128,     1},
1587     {35,  8192,    24,  256,     1},
1588     {35,  8704,    24,  64,      1},
1589     {35,  9216,    24,  256,     1},
1590     {35,  9728,    24,  64,      1},
1591     {35,  10240,   24,  128,     1},
1592     {35,  20480,   24,  1024,    1},
1593     {35,  30720,   24,  32,      1},
1594     {35,  40960,   24,  8192,    1},
1595     {35,  51200,   24,  1024,    1},
1596     {35,  61440,   24,  2048,    1},
1597     {35,  71680,   24,  2048,    1},
1598     {35,  81920,   24,  8192,    1},
1599     {35,  92160,   24,  256,     1},
1600     {35,  102400,  24,  4096,    1},
1601     {35,  204800,  24,  8192,    1},
1602     {35,  307200,  24,  1024,    1},
1603     {35,  409600,  24,  16384,   1},
1604     {35,  512000,  24,  1024,    1},
1605     {35,  614400,  24,  2048,    1},
1606     {35,  716800,  24,  716800,  0},
1607     {35,  819200,  24,  32768,   1},
1608     {35,  921600,  24,  921600,  0},
1609     {35,  1024000, 24,  1024000, 0},
1610     {36,  512,     33,  512,     0},
1611     {36,  1024,    33,  1024,    0},
1612     {36,  1536,    33,  128,     0},
1613     {36,  2048,    33,  128,     0},
1614     {36,  2560,    33,  64,      0},
1615     {36,  3072,    33,  64,      0},
1616     {36,  3584,    33,  128,     0},
1617     {36,  4096,    33,  2048,    1},
1618     {36,  4608,    33,  128,     0},
1619     {36,  5120,    33,  1024,    0},
1620     {36,  5632,    33,  512,     1},
1621     {36,  6144,    33,  2048,    0},
1622     {36,  6656,    33,  256,     1},
1623     {36,  7168,    33,  512,     1},
1624     {36,  7680,    33,  64,      1},
1625     {36,  8192,    33,  4096,    1},
1626     {36,  8704,    33,  512,     1},
1627     {36,  9216,    33,  1024,    1},
1628     {36,  9728,    33,  256,     1},
1629     {36,  10240,   33,  512,     0},
1630     {36,  20480,   33,  4096,    1},
1631     {36,  30720,   33,  128,     1},
1632     {36,  40960,   33,  8192,    1},
1633     {36,  51200,   33,  256,     1},
1634     {36,  61440,   33,  2048,    1},
1635     {36,  71680,   33,  256,     1},
1636     {36,  81920,   33,  16384,   1},
1637     {36,  92160,   33,  256,     1},
1638     {36,  102400,  33,  4096,    1},
1639     {36,  204800,  33,  2048,    0},
1640     {36,  307200,  33,  2048,    0},
1641     {36,  409600,  33,  128,     0},
1642     {36,  512000,  33,  1024,    0},
1643     {36,  614400,  33,  614400,  0},
1644     {36,  716800,  33,  1024,    0},
1645     {36,  819200,  33,  4096,    0},
1646     {36,  921600,  33,  2048,    0},
1647     {36,  1024000, 33,  2048,    0},
1648     {45,  512,     42,  512,     0},
1649     {45,  1024,    42,  1024,    0},
1650     {45,  1536,    42,  32,      0},
1651     {45,  2048,    42,  64,      0},
1652     {45,  2560,    42,  128,     0},
1653     {45,  3072,    42,  32,      0},
1654     {45,  3584,    42,  512,     1},
1655     {45,  4096,    42,  128,     0},
1656     {45,  4608,    42,  64,      1},
1657     {45,  5120,    42,  128,     0},
1658     {45,  5632,    42,  512,     0},
1659     {45,  6144,    42,  1024,    1},
1660     {45,  6656,    42,  512,     1},
1661     {45,  7168,    42,  512,     1},
1662     {45,  7680,    42,  512,     1},
1663     {45,  8192,    42,  8192,    1},
1664     {45,  8704,    42,  64,      1},
1665     {45,  9216,    42,  1024,    1},
1666     {45,  9728,    42,  64,      1},
1667     {45,  10240,   42,  256,     1},
1668     {45,  20480,   42,  4096,    1},
1669     {45,  30720,   42,  512,     1},
1670     {45,  40960,   42,  4096,    1},
1671     {45,  51200,   42,  1024,    1},
1672     {45,  61440,   42,  4096,    1},
1673     {45,  71680,   42,  1024,    1},
1674     {45,  81920,   42,  8192,    1},
1675     {45,  92160,   42,  512,     1},
1676     {45,  102400,  42,  4096,    1},
1677     {45,  204800,  42,  4096,    0},
1678     {45,  307200,  42,  4096,    0},
1679     {45,  409600,  42,  4096,    0},
1680     {45,  512000,  42,  1024,    0},
1681     {45,  614400,  42,  2048,    0},
1682     {45,  716800,  42,  2048,    0},
1683     {45,  819200,  42,  32768,   0},
1684     {45,  921600,  42,  4096,    0},
1685     {45,  1024000, 42,  512,     0},
1686     {56,  512,     43,  512,     0},
1687     {56,  1024,    43,  32,      0},
1688     {56,  1536,    43,  64,      0},
1689     {56,  2048,    43,  1024,    0},
1690     {56,  2560,    43,  128,     0},
1691     {56,  3072,    43,  128,     1},
1692     {56,  3584,    43,  128,     0},
1693     {56,  4096,    43,  128,     0},
1694     {56,  4608,    43,  256,     0},
1695     {56,  5120,    43,  256,     0},
1696     {56,  5632,    43,  256,     1},
1697     {56,  6144,    43,  1024,    1},
1698     {56,  6656,    43,  128,     1},
1699     {56,  7168,    43,  1024,    1},
1700     {56,  7680,    43,  256,     1},
1701     {56,  8192,    43,  1024,    1},
1702     {56,  8704,    43,  256,     1},
1703     {56,  9216,    43,  1024,    1},
1704     {56,  9728,    43,  512,     1},
1705     {56,  10240,   43,  1024,    1},
1706     {56,  20480,   43,  4096,    1},
1707     {56,  30720,   43,  2048,    1},
1708     {56,  40960,   43,  8192,    1},
1709     {56,  51200,   43,  512,     1},
1710     {56,  61440,   43,  512,     1},
1711     {56,  71680,   43,  512,     1},
1712     {56,  81920,   43,  8192,    1},
1713     {56,  92160,   43,  512,     1},
1714     {56,  102400,  43,  512,     1},
1715     {56,  204800,  43,  4096,    0},
1716     {56,  307200,  43,  307200,  0},
1717     {56,  409600,  43,  16384,   0},
1718     {56,  512000,  43,  4096,    0},
1719     {56,  614400,  43,  614400,  0},
1720     {56,  716800,  43,  4096,    0},
1721     {56,  819200,  43,  819200,  0},
1722     {56,  921600,  43,  921600,  0},
1723     {56,  1024000, 43,  8192,    0},
1724     {84,  512,     126, 32,      0},
1725     {84,  1024,    126, 512,     0},
1726     {84,  1536,    126, 256,     0},
1727     {84,  2048,    126, 1024,    0},
1728     {84,  2560,    126, 256,     0},
1729     {84,  3072,    126, 64,      1},
1730     {84,  3584,    126, 512,     0},
1731     {84,  4096,    126, 4096,    1},
1732     {84,  4608,    126, 64,      1},
1733     {84,  5120,    126, 512,     1},
1734     {84,  5632,    126, 64,      1},
1735     {84,  6144,    126, 2048,    1},
1736     {84,  6656,    126, 64,      1},
1737     {84,  7168,    126, 512,     1},
1738     {84,  7680,    126, 256,     1},
1739     {84,  8192,    126, 64,      1},
1740     {84,  8704,    126, 512,     1},
1741     {84,  9216,    126, 32,      1},
1742     {84,  9728,    126, 256,     1},
1743     {84,  10240,   126, 256,     1},
1744     {84,  20480,   126, 64,      1},
1745     {84,  30720,   126, 512,     0},
1746     {84,  40960,   126, 128,     0},
1747     {84,  51200,   126, 2048,    0},
1748     {84,  61440,   126, 512,     0},
1749     {84,  71680,   126, 128,     0},
1750     {84,  81920,   126, 4096,    0},
1751     {84,  92160,   126, 2048,    0},
1752     {84,  102400,  126, 2048,    0},
1753     {84,  204800,  126, 256,     0},
1754     {84,  307200,  126, 512,     0},
1755     {84,  409600,  126, 512,     0},
1756     {84,  512000,  126, 512,     0},
1757     {84,  614400,  126, 64,      0},
1758     {84,  716800,  126, 64,      0},
1759     {84,  819200,  126, 64,      0},
1760     {84,  921600,  126, 128,     0},
1761     {84,  1024000, 126, 128,     0},
1762     {120, 512,     210, 256,     0},
1763     {120, 1024,    210, 1024,    0},
1764     {120, 1536,    210, 512,     0},
1765     {120, 2048,    210, 512,     0},
1766     {120, 2560,    210, 256,     0},
1767     {120, 3072,    210, 512,     0},
1768     {120, 3584,    210, 512,     0},
1769     {120, 4096,    210, 512,     0},
1770     {120, 4608,    210, 512,     1},
1771     {120, 5120,    210, 512,     0},
1772     {120, 5632,    210, 512,     1},
1773     {120, 6144,    210, 256,     0},
1774     {120, 6656,    210, 64,      0},
1775     {120, 7168,    210, 512,     0},
1776     {120, 7680,    210, 512,     0},
1777     {120, 8192,    210, 8192,    0},
1778     {120, 8704,    210, 512,     0},
1779     {120, 9216,    210, 1024,    0},
1780     {120, 9728,    210, 512,     0},
1781     {120, 10240,   210, 1024,    0},
1782     {120, 20480,   210, 4096,    0},
1783     {120, 30720,   210, 30720,   0},
1784     {120, 40960,   210, 512,     0},
1785     {120, 51200,   210, 51200,   0},
1786     {120, 61440,   210, 61440,   0},
1787     {120, 71680,   210, 71680,   0},
1788     {120, 81920,   210, 81920,   0},
1789     {120, 92160,   210, 92160,   0},
1790     {120, 102400,  210, 102400,  0},
1791     {120, 204800,  210, 204800,  0},
1792     {120, 307200,  210, 307200,  0},
1793     {120, 409600,  210, 409600,  0},
1794     {120, 512000,  210, 512,     0},
1795     {120, 614400,  210, 1024,    0},
1796     {120, 716800,  210, 1024,    0},
1797     {120, 819200,  210, 8192,    0},
1798     {120, 921600,  210, 1024,    0},
1799     {120, 1024000, 210, 8192,    0},
1800     {165, 512,     330, 256,     0},
1801     {165, 1024,    330, 1024,    0},
1802     {165, 1536,    330, 512,     0},
1803     {165, 2048,    330, 2048,    0},
1804     {165, 2560,    330, 512,     0},
1805     {165, 3072,    330, 512,     0},
1806     {165, 3584,    330, 512,     0},
1807     {165, 4096,    330, 4096,    0},
1808     {165, 4608,    330, 256,     0},
1809     {165, 5120,    330, 256,     0},
1810     {165, 5632,    330, 512,     0},
1811     {165, 6144,    330, 1024,    0},
1812     {165, 6656,    330, 6656,    0},
1813     {165, 7168,    330, 256,     0},
1814     {165, 7680,    330, 128,     0},
1815     {165, 8192,    330, 8192,    0},
1816     {165, 8704,    330, 512,     0},
1817     {165, 9216,    330, 1024,    0},
1818     {165, 9728,    330, 512,     0},
1819     {165, 10240,   330, 256,     0},
1820     {165, 20480,   330, 20480,   0},
1821     {165, 30720,   330, 30720,   0},
1822     {165, 40960,   330, 40960,   0},
1823     {165, 51200,   330, 51200,   0},
1824     {165, 61440,   330, 61440,   0},
1825     {165, 71680,   330, 71680,   0},
1826     {165, 81920,   330, 81920,   0},
1827     {165, 92160,   330, 92160,   0},
1828     {165, 102400,  330, 102400,  0},
1829     {165, 204800,  330, 204800,  0},
1830     {165, 307200,  330, 307200,  0},
1831     {165, 409600,  330, 409600,  0},
1832     {165, 512000,  330, 512000,  0},
1833     {165, 614400,  330, 614400,  1},
1834     {165, 716800,  330, 716800,  1},
1835     {165, 819200,  330, 819200,  1},
1836     {165, 921600,  330, 921600,  1},
1837     {165, 1024000, 330, 1024000, 0}
1838 };
1839 
1840 ////////////////////////////////////////////////////////////////////////////////
1841 std::vector<std::array<int, RECORD_LENGTH> > dgemm_tn_a100 = {
1842     {1,   512,     3,   512,     0},
1843     {1,   1024,    3,   256,     0},
1844     {1,   1536,    3,   64,      0},
1845     {1,   2048,    3,   256,     0},
1846     {1,   2560,    3,   256,     0},
1847     {1,   3072,    3,   256,     0},
1848     {1,   3584,    3,   32,      0},
1849     {1,   4096,    3,   2048,    0},
1850     {1,   4608,    3,   32,      0},
1851     {1,   5120,    3,   32,      0},
1852     {1,   5632,    3,   512,     0},
1853     {1,   6144,    3,   2048,    0},
1854     {1,   6656,    3,   128,     0},
1855     {1,   7168,    3,   128,     0},
1856     {1,   7680,    3,   64,      0},
1857     {1,   8192,    3,   8192,    0},
1858     {1,   8704,    3,   64,      0},
1859     {1,   9216,    3,   32,      0},
1860     {1,   9728,    3,   512,     0},
1861     {1,   10240,   3,   2048,    0},
1862     {1,   20480,   3,   1024,    0},
1863     {1,   30720,   3,   64,      0},
1864     {1,   40960,   3,   4096,    0},
1865     {1,   51200,   3,   256,     0},
1866     {1,   61440,   3,   4096,    1},
1867     {1,   71680,   3,   512,     1},
1868     {1,   81920,   3,   8192,    1},
1869     {1,   92160,   3,   2048,    1},
1870     {1,   102400,  3,   512,     1},
1871     {1,   204800,  3,   2048,    1},
1872     {1,   307200,  3,   512,     1},
1873     {1,   409600,  3,   16384,   1},
1874     {1,   512000,  3,   512000,  0},
1875     {1,   614400,  3,   614400,  0},
1876     {1,   716800,  3,   716800,  0},
1877     {1,   819200,  3,   819200,  0},
1878     {1,   921600,  3,   921600,  0},
1879     {1,   1024000, 3,   1024000, 0},
1880     {1,   512,     4,   256,     0},
1881     {1,   1024,    4,   256,     0},
1882     {1,   1536,    4,   128,     0},
1883     {1,   2048,    4,   2048,    0},
1884     {1,   2560,    4,   256,     0},
1885     {1,   3072,    4,   32,      0},
1886     {1,   3584,    4,   32,      0},
1887     {1,   4096,    4,   512,     0},
1888     {1,   4608,    4,   64,      0},
1889     {1,   5120,    4,   128,     0},
1890     {1,   5632,    4,   64,      0},
1891     {1,   6144,    4,   2048,    0},
1892     {1,   6656,    4,   512,     0},
1893     {1,   7168,    4,   128,     0},
1894     {1,   7680,    4,   64,      0},
1895     {1,   8192,    4,   8192,    0},
1896     {1,   8704,    4,   32,      0},
1897     {1,   9216,    4,   128,     0},
1898     {1,   9728,    4,   32,      0},
1899     {1,   10240,   4,   1024,    0},
1900     {1,   20480,   4,   32,      0},
1901     {1,   30720,   4,   256,     0},
1902     {1,   40960,   4,   8192,    0},
1903     {1,   51200,   4,   2048,    1},
1904     {1,   61440,   4,   512,     1},
1905     {1,   71680,   4,   256,     1},
1906     {1,   81920,   4,   4096,    1},
1907     {1,   92160,   4,   2048,    1},
1908     {1,   102400,  4,   2048,    1},
1909     {1,   204800,  4,   256,     1},
1910     {1,   307200,  4,   2048,    1},
1911     {1,   409600,  4,   8192,    1},
1912     {1,   512000,  4,   512000,  0},
1913     {1,   614400,  4,   614400,  0},
1914     {1,   716800,  4,   716800,  0},
1915     {1,   819200,  4,   819200,  0},
1916     {1,   921600,  4,   921600,  0},
1917     {1,   1024000, 4,   1024000, 0},
1918     {3,   512,     6,   32,      1},
1919     {3,   1024,    6,   1024,    0},
1920     {3,   1536,    6,   32,      0},
1921     {3,   2048,    6,   2048,    0},
1922     {3,   2560,    6,   256,     1},
1923     {3,   3072,    6,   64,      1},
1924     {3,   3584,    6,   32,      1},
1925     {3,   4096,    6,   4096,    0},
1926     {3,   4608,    6,   128,     1},
1927     {3,   5120,    6,   1024,    1},
1928     {3,   5632,    6,   128,     1},
1929     {3,   6144,    6,   128,     1},
1930     {3,   6656,    6,   64,      1},
1931     {3,   7168,    6,   32,      1},
1932     {3,   7680,    6,   32,      1},
1933     {3,   8192,    6,   8192,    0},
1934     {3,   8704,    6,   32,      1},
1935     {3,   9216,    6,   128,     1},
1936     {3,   9728,    6,   32,      1},
1937     {3,   10240,   6,   2048,    1},
1938     {3,   20480,   6,   1024,    1},
1939     {3,   30720,   6,   128,     1},
1940     {3,   40960,   6,   512,     1},
1941     {3,   51200,   6,   512,     1},
1942     {3,   61440,   6,   128,     1},
1943     {3,   71680,   6,   1024,    1},
1944     {3,   81920,   6,   128,     1},
1945     {3,   92160,   6,   256,     1},
1946     {3,   102400,  6,   256,     1},
1947     {3,   204800,  6,   2048,    1},
1948     {3,   307200,  6,   4096,    1},
1949     {3,   409600,  6,   8192,    1},
1950     {3,   512000,  6,   4096,    1},
1951     {3,   614400,  6,   4096,    1},
1952     {3,   716800,  6,   2048,    1},
1953     {3,   819200,  6,   32768,   1},
1954     {3,   921600,  6,   4096,    1},
1955     {3,   1024000, 6,   8192,    1},
1956     {4,   512,     10,  512,     1},
1957     {4,   1024,    10,  1024,    0},
1958     {4,   1536,    10,  32,      1},
1959     {4,   2048,    10,  2048,    0},
1960     {4,   2560,    10,  256,     1},
1961     {4,   3072,    10,  256,     1},
1962     {4,   3584,    10,  256,     1},
1963     {4,   4096,    10,  4096,    0},
1964     {4,   4608,    10,  128,     1},
1965     {4,   5120,    10,  256,     0},
1966     {4,   5632,    10,  512,     1},
1967     {4,   6144,    10,  128,     1},
1968     {4,   6656,    10,  128,     1},
1969     {4,   7168,    10,  1024,    1},
1970     {4,   7680,    10,  256,     1},
1971     {4,   8192,    10,  8192,    0},
1972     {4,   8704,    10,  64,      1},
1973     {4,   9216,    10,  1024,    1},
1974     {4,   9728,    10,  32,      1},
1975     {4,   10240,   10,  1024,    1},
1976     {4,   20480,   10,  64,      1},
1977     {4,   30720,   10,  256,     1},
1978     {4,   40960,   10,  128,     1},
1979     {4,   51200,   10,  64,      1},
1980     {4,   61440,   10,  128,     1},
1981     {4,   71680,   10,  256,     1},
1982     {4,   81920,   10,  8192,    1},
1983     {4,   92160,   10,  256,     1},
1984     {4,   102400,  10,  4096,    1},
1985     {4,   204800,  10,  512,     1},
1986     {4,   307200,  10,  4096,    1},
1987     {4,   409600,  10,  8192,    1},
1988     {4,   512000,  10,  2048,    1},
1989     {4,   614400,  10,  4096,    1},
1990     {4,   716800,  10,  4096,    1},
1991     {4,   819200,  10,  32768,   1},
1992     {4,   921600,  10,  4096,    1},
1993     {4,   1024000, 10,  8192,    1},
1994     {6,   512,     10,  32,      1},
1995     {6,   1024,    10,  1024,    0},
1996     {6,   1536,    10,  32,      0},
1997     {6,   2048,    10,  2048,    0},
1998     {6,   2560,    10,  256,     0},
1999     {6,   3072,    10,  64,      1},
2000     {6,   3584,    10,  64,      1},
2001     {6,   4096,    10,  4096,    0},
2002     {6,   4608,    10,  256,     1},
2003     {6,   5120,    10,  64,      1},
2004     {6,   5632,    10,  512,     1},
2005     {6,   6144,    10,  32,      1},
2006     {6,   6656,    10,  64,      1},
2007     {6,   7168,    10,  1024,    1},
2008     {6,   7680,    10,  256,     1},
2009     {6,   8192,    10,  8192,    0},
2010     {6,   8704,    10,  256,     1},
2011     {6,   9216,    10,  512,     1},
2012     {6,   9728,    10,  256,     1},
2013     {6,   10240,   10,  32,      1},
2014     {6,   20480,   10,  64,      1},
2015     {6,   30720,   10,  512,     1},
2016     {6,   40960,   10,  8192,    1},
2017     {6,   51200,   10,  2048,    1},
2018     {6,   61440,   10,  1024,    1},
2019     {6,   71680,   10,  512,     1},
2020     {6,   81920,   10,  1024,    1},
2021     {6,   92160,   10,  1024,    1},
2022     {6,   102400,  10,  256,     1},
2023     {6,   204800,  10,  8192,    1},
2024     {6,   307200,  10,  4096,    1},
2025     {6,   409600,  10,  16384,   1},
2026     {6,   512000,  10,  2048,    1},
2027     {6,   614400,  10,  8192,    1},
2028     {6,   716800,  10,  4096,    1},
2029     {6,   819200,  10,  32768,   1},
2030     {6,   921600,  10,  4096,    1},
2031     {6,   1024000, 10,  8192,    1},
2032     {12,  512,     15,  512,     1},
2033     {12,  1024,    15,  1024,    0},
2034     {12,  1536,    15,  64,      0},
2035     {12,  2048,    15,  2048,    0},
2036     {12,  2560,    15,  512,     0},
2037     {12,  3072,    15,  512,     1},
2038     {12,  3584,    15,  256,     1},
2039     {12,  4096,    15,  4096,    0},
2040     {12,  4608,    15,  256,     1},
2041     {12,  5120,    15,  128,     1},
2042     {12,  5632,    15,  64,      0},
2043     {12,  6144,    15,  512,     1},
2044     {12,  6656,    15,  256,     1},
2045     {12,  7168,    15,  64,      1},
2046     {12,  7680,    15,  32,      0},
2047     {12,  8192,    15,  8192,    0},
2048     {12,  8704,    15,  64,      1},
2049     {12,  9216,    15,  256,     1},
2050     {12,  9728,    15,  32,      1},
2051     {12,  10240,   15,  32,      1},
2052     {12,  20480,   15,  2048,    1},
2053     {12,  30720,   15,  2048,    1},
2054     {12,  40960,   15,  512,     1},
2055     {12,  51200,   15,  2048,    1},
2056     {12,  61440,   15,  2048,    1},
2057     {12,  71680,   15,  32,      1},
2058     {12,  81920,   15,  16384,   1},
2059     {12,  92160,   15,  256,     1},
2060     {12,  102400,  15,  2048,    1},
2061     {12,  204800,  15,  512,     1},
2062     {12,  307200,  15,  2048,    1},
2063     {12,  409600,  15,  16384,   1},
2064     {12,  512000,  15,  4096,    1},
2065     {12,  614400,  15,  4096,    1},
2066     {12,  716800,  15,  512,     1},
2067     {12,  819200,  15,  32768,   1},
2068     {12,  921600,  15,  512,     1},
2069     {12,  1024000, 15,  8192,    1},
2070     {11,  512,     20,  128,     1},
2071     {11,  1024,    20,  1024,    0},
2072     {11,  1536,    20,  512,     1},
2073     {11,  2048,    20,  2048,    0},
2074     {11,  2560,    20,  512,     1},
2075     {11,  3072,    20,  32,      0},
2076     {11,  3584,    20,  128,     0},
2077     {11,  4096,    20,  4096,    0},
2078     {11,  4608,    20,  256,     0},
2079     {11,  5120,    20,  256,     0},
2080     {11,  5632,    20,  128,     0},
2081     {11,  6144,    20,  64,      0},
2082     {11,  6656,    20,  512,     0},
2083     {11,  7168,    20,  512,     0},
2084     {11,  7680,    20,  512,     1},
2085     {11,  8192,    20,  8192,    0},
2086     {11,  8704,    20,  32,      1},
2087     {11,  9216,    20,  256,     1},
2088     {11,  9728,    20,  512,     1},
2089     {11,  10240,   20,  256,     0},
2090     {11,  20480,   20,  256,     1},
2091     {11,  30720,   20,  2048,    1},
2092     {11,  40960,   20,  512,     1},
2093     {11,  51200,   20,  2048,    1},
2094     {11,  61440,   20,  2048,    1},
2095     {11,  71680,   20,  32,      1},
2096     {11,  81920,   20,  2048,    1},
2097     {11,  92160,   20,  64,      1},
2098     {11,  102400,  20,  4096,    1},
2099     {11,  204800,  20,  8192,    1},
2100     {11,  307200,  20,  128,     1},
2101     {11,  409600,  20,  8192,    1},
2102     {11,  512000,  20,  4096,    1},
2103     {11,  614400,  20,  256,     1},
2104     {11,  716800,  20,  512,     1},
2105     {11,  819200,  20,  16384,   1},
2106     {11,  921600,  20,  512,     1},
2107     {11,  1024000, 20,  8192,    1},
2108     {16,  512,     21,  32,      1},
2109     {16,  1024,    21,  1024,    0},
2110     {16,  1536,    21,  128,     0},
2111     {16,  2048,    21,  2048,    0},
2112     {16,  2560,    21,  32,      0},
2113     {16,  3072,    21,  64,      1},
2114     {16,  3584,    21,  64,      0},
2115     {16,  4096,    21,  256,     0},
2116     {16,  4608,    21,  64,      0},
2117     {16,  5120,    21,  512,     0},
2118     {16,  5632,    21,  128,     0},
2119     {16,  6144,    21,  64,      0},
2120     {16,  6656,    21,  256,     1},
2121     {16,  7168,    21,  512,     0},
2122     {16,  7680,    21,  64,      1},
2123     {16,  8192,    21,  8192,    0},
2124     {16,  8704,    21,  256,     0},
2125     {16,  9216,    21,  1024,    1},
2126     {16,  9728,    21,  128,     1},
2127     {16,  10240,   21,  256,     1},
2128     {16,  20480,   21,  4096,    1},
2129     {16,  30720,   21,  2048,    1},
2130     {16,  40960,   21,  1024,    1},
2131     {16,  51200,   21,  128,     1},
2132     {16,  61440,   21,  512,     1},
2133     {16,  71680,   21,  1024,    1},
2134     {16,  81920,   21,  2048,    1},
2135     {16,  92160,   21,  64,      1},
2136     {16,  102400,  21,  4096,    1},
2137     {16,  204800,  21,  8192,    1},
2138     {16,  307200,  21,  128,     1},
2139     {16,  409600,  21,  256,     1},
2140     {16,  512000,  21,  128,     1},
2141     {16,  614400,  21,  8192,    1},
2142     {16,  716800,  21,  1024,    1},
2143     {16,  819200,  21,  32768,   1},
2144     {16,  921600,  21,  1024,    1},
2145     {16,  1024000, 21,  512,     0},
2146     {25,  512,     28,  32,      0},
2147     {25,  1024,    28,  1024,    0},
2148     {25,  1536,    28,  64,      0},
2149     {25,  2048,    28,  2048,    0},
2150     {25,  2560,    28,  64,      0},
2151     {25,  3072,    28,  256,     0},
2152     {25,  3584,    28,  128,     0},
2153     {25,  4096,    28,  64,      0},
2154     {25,  4608,    28,  128,     0},
2155     {25,  5120,    28,  128,     0},
2156     {25,  5632,    28,  128,     1},
2157     {25,  6144,    28,  64,      0},
2158     {25,  6656,    28,  128,     0},
2159     {25,  7168,    28,  256,     0},
2160     {25,  7680,    28,  128,     0},
2161     {25,  8192,    28,  512,     0},
2162     {25,  8704,    28,  256,     1},
2163     {25,  9216,    28,  64,      0},
2164     {25,  9728,    28,  256,     0},
2165     {25,  10240,   28,  512,     1},
2166     {25,  20480,   28,  2048,    1},
2167     {25,  30720,   28,  512,     1},
2168     {25,  40960,   28,  1024,    1},
2169     {25,  51200,   28,  128,     1},
2170     {25,  61440,   28,  4096,    1},
2171     {25,  71680,   28,  1024,    1},
2172     {25,  81920,   28,  4096,    1},
2173     {25,  92160,   28,  256,     1},
2174     {25,  102400,  28,  4096,    1},
2175     {25,  204800,  28,  8192,    1},
2176     {25,  307200,  28,  512,     1},
2177     {25,  409600,  28,  1024,    0},
2178     {25,  512000,  28,  128,     0},
2179     {25,  614400,  28,  1024,    0},
2180     {25,  716800,  28,  4096,    0},
2181     {25,  819200,  28,  256,     0},
2182     {25,  921600,  28,  4096,    0},
2183     {25,  1024000, 28,  4096,    0},
2184     {24,  512,     35,  256,     0},
2185     {24,  1024,    35,  1024,    0},
2186     {24,  1536,    35,  64,      0},
2187     {24,  2048,    35,  64,      0},
2188     {24,  2560,    35,  128,     0},
2189     {24,  3072,    35,  128,     0},
2190     {24,  3584,    35,  128,     0},
2191     {24,  4096,    35,  256,     0},
2192     {24,  4608,    35,  64,      0},
2193     {24,  5120,    35,  128,     0},
2194     {24,  5632,    35,  128,     0},
2195     {24,  6144,    35,  256,     0},
2196     {24,  6656,    35,  128,     0},
2197     {24,  7168,    35,  64,      0},
2198     {24,  7680,    35,  128,     0},
2199     {24,  8192,    35,  8192,    0},
2200     {24,  8704,    35,  32,      0},
2201     {24,  9216,    35,  256,     0},
2202     {24,  9728,    35,  256,     0},
2203     {24,  10240,   35,  2048,    0},
2204     {24,  20480,   35,  2048,    1},
2205     {24,  30720,   35,  256,     1},
2206     {24,  40960,   35,  64,      1},
2207     {24,  51200,   35,  128,     1},
2208     {24,  61440,   35,  32,      1},
2209     {24,  71680,   35,  64,      1},
2210     {24,  81920,   35,  256,     1},
2211     {24,  92160,   35,  256,     1},
2212     {24,  102400,  35,  256,     1},
2213     {24,  204800,  35,  128,     1},
2214     {24,  307200,  35,  4096,    0},
2215     {24,  409600,  35,  8192,    0},
2216     {24,  512000,  35,  4096,    0},
2217     {24,  614400,  35,  512,     0},
2218     {24,  716800,  35,  4096,    0},
2219     {24,  819200,  35,  16384,   0},
2220     {24,  921600,  35,  2048,    0},
2221     {24,  1024000, 35,  4096,    0},
2222     {33,  512,     36,  512,     0},
2223     {33,  1024,    36,  1024,    0},
2224     {33,  1536,    36,  32,      0},
2225     {33,  2048,    36,  256,     0},
2226     {33,  2560,    36,  128,     0},
2227     {33,  3072,    36,  128,     0},
2228     {33,  3584,    36,  64,      0},
2229     {33,  4096,    36,  64,      0},
2230     {33,  4608,    36,  32,      1},
2231     {33,  5120,    36,  128,     1},
2232     {33,  5632,    36,  512,     1},
2233     {33,  6144,    36,  1024,    1},
2234     {33,  6656,    36,  256,     1},
2235     {33,  7168,    36,  64,      1},
2236     {33,  7680,    36,  32,      1},
2237     {33,  8192,    36,  1024,    1},
2238     {33,  8704,    36,  512,     1},
2239     {33,  9216,    36,  1024,    1},
2240     {33,  9728,    36,  32,      1},
2241     {33,  10240,   36,  64,      1},
2242     {33,  20480,   36,  4096,    1},
2243     {33,  30720,   36,  2048,    1},
2244     {33,  40960,   36,  8192,    1},
2245     {33,  51200,   36,  128,     1},
2246     {33,  61440,   36,  256,     1},
2247     {33,  71680,   36,  128,     1},
2248     {33,  81920,   36,  256,     1},
2249     {33,  92160,   36,  256,     1},
2250     {33,  102400,  36,  64,      1},
2251     {33,  204800,  36,  8192,    1},
2252     {33,  307200,  36,  1024,    1},
2253     {33,  409600,  36,  16384,   1},
2254     {33,  512000,  36,  2048,    1},
2255     {33,  614400,  36,  8192,    1},
2256     {33,  716800,  36,  1024,    1},
2257     {33,  819200,  36,  32768,   1},
2258     {33,  921600,  36,  4096,    1},
2259     {33,  1024000, 36,  1024000, 0},
2260     {42,  512,     45,  512,     0},
2261     {42,  1024,    45,  1024,    0},
2262     {42,  1536,    45,  32,      0},
2263     {42,  2048,    45,  2048,    0},
2264     {42,  2560,    45,  128,     0},
2265     {42,  3072,    45,  512,     1},
2266     {42,  3584,    45,  256,     0},
2267     {42,  4096,    45,  128,     0},
2268     {42,  4608,    45,  64,      1},
2269     {42,  5120,    45,  64,      1},
2270     {42,  5632,    45,  32,      1},
2271     {42,  6144,    45,  2048,    0},
2272     {42,  6656,    45,  128,     1},
2273     {42,  7168,    45,  1024,    1},
2274     {42,  7680,    45,  256,     1},
2275     {42,  8192,    45,  2048,    1},
2276     {42,  8704,    45,  512,     1},
2277     {42,  9216,    45,  256,     1},
2278     {42,  9728,    45,  512,     1},
2279     {42,  10240,   45,  1024,    1},
2280     {42,  20480,   45,  128,     1},
2281     {42,  30720,   45,  512,     1},
2282     {42,  40960,   45,  2048,    1},
2283     {42,  51200,   45,  256,     1},
2284     {42,  61440,   45,  4096,    1},
2285     {42,  71680,   45,  128,     1},
2286     {42,  81920,   45,  8192,    1},
2287     {42,  92160,   45,  512,     1},
2288     {42,  102400,  45,  256,     1},
2289     {42,  204800,  45,  8192,    1},
2290     {42,  307200,  45,  2048,    1},
2291     {42,  409600,  45,  16384,   1},
2292     {42,  512000,  45,  4096,    1},
2293     {42,  614400,  45,  614400,  0},
2294     {42,  716800,  45,  716800,  0},
2295     {42,  819200,  45,  819200,  0},
2296     {42,  921600,  45,  921600,  0},
2297     {42,  1024000, 45,  1024000, 0},
2298     {43,  512,     56,  512,     0},
2299     {43,  1024,    56,  1024,    0},
2300     {43,  1536,    56,  256,     0},
2301     {43,  2048,    56,  128,     0},
2302     {43,  2560,    56,  32,      0},
2303     {43,  3072,    56,  128,     0},
2304     {43,  3584,    56,  128,     0},
2305     {43,  4096,    56,  128,     0},
2306     {43,  4608,    56,  256,     0},
2307     {43,  5120,    56,  256,     0},
2308     {43,  5632,    56,  512,     1},
2309     {43,  6144,    56,  256,     1},
2310     {43,  6656,    56,  256,     1},
2311     {43,  7168,    56,  128,     1},
2312     {43,  7680,    56,  256,     1},
2313     {43,  8192,    56,  8192,    1},
2314     {43,  8704,    56,  512,     1},
2315     {43,  9216,    56,  512,     1},
2316     {43,  9728,    56,  128,     1},
2317     {43,  10240,   56,  1024,    1},
2318     {43,  20480,   56,  128,     1},
2319     {43,  30720,   56,  256,     1},
2320     {43,  40960,   56,  256,     1},
2321     {43,  51200,   56,  512,     1},
2322     {43,  61440,   56,  4096,    1},
2323     {43,  71680,   56,  512,     1},
2324     {43,  81920,   56,  8192,    1},
2325     {43,  92160,   56,  512,     1},
2326     {43,  102400,  56,  128,     1},
2327     {43,  204800,  56,  512,     1},
2328     {43,  307200,  56,  1024,    1},
2329     {43,  409600,  56,  4096,    1},
2330     {43,  512000,  56,  512000,  0},
2331     {43,  614400,  56,  614400,  0},
2332     {43,  716800,  56,  716800,  0},
2333     {43,  819200,  56,  819200,  0},
2334     {43,  921600,  56,  921600,  0},
2335     {43,  1024000, 56,  1024000, 0},
2336     {126, 512,     84,  256,     0},
2337     {126, 1024,    84,  1024,    0},
2338     {126, 1536,    84,  64,      0},
2339     {126, 2048,    84,  128,     0},
2340     {126, 2560,    84,  512,     0},
2341     {126, 3072,    84,  1024,    0},
2342     {126, 3584,    84,  128,     1},
2343     {126, 4096,    84,  4096,    1},
2344     {126, 4608,    84,  256,     1},
2345     {126, 5120,    84,  64,      1},
2346     {126, 5632,    84,  128,     1},
2347     {126, 6144,    84,  2048,    1},
2348     {126, 6656,    84,  256,     1},
2349     {126, 7168,    84,  128,     1},
2350     {126, 7680,    84,  64,      1},
2351     {126, 8192,    84,  128,     1},
2352     {126, 8704,    84,  512,     1},
2353     {126, 9216,    84,  128,     1},
2354     {126, 9728,    84,  128,     1},
2355     {126, 10240,   84,  2048,    1},
2356     {126, 20480,   84,  256,     1},
2357     {126, 30720,   84,  512,     0},
2358     {126, 40960,   84,  8192,    0},
2359     {126, 51200,   84,  128,     0},
2360     {126, 61440,   84,  2048,    0},
2361     {126, 71680,   84,  2048,    0},
2362     {126, 81920,   84,  81920,   0},
2363     {126, 92160,   84,  92160,   0},
2364     {126, 102400,  84,  102400,  0},
2365     {126, 204800,  84,  204800,  0},
2366     {126, 307200,  84,  307200,  0},
2367     {126, 409600,  84,  409600,  0},
2368     {126, 512000,  84,  512000,  0},
2369     {126, 614400,  84,  614400,  0},
2370     {126, 716800,  84,  716800,  0},
2371     {126, 819200,  84,  819200,  0},
2372     {126, 921600,  84,  921600,  0},
2373     {126, 1024000, 84,  1024000, 0},
2374     {210, 512,     120, 512,     0},
2375     {210, 1024,    120, 256,     0},
2376     {210, 1536,    120, 256,     0},
2377     {210, 2048,    120, 2048,    1},
2378     {210, 2560,    120, 256,     1},
2379     {210, 3072,    120, 128,     1},
2380     {210, 3584,    120, 128,     1},
2381     {210, 4096,    120, 256,     1},
2382     {210, 4608,    120, 32,      1},
2383     {210, 5120,    120, 128,     1},
2384     {210, 5632,    120, 512,     1},
2385     {210, 6144,    120, 512,     1},
2386     {210, 6656,    120, 256,     1},
2387     {210, 7168,    120, 256,     1},
2388     {210, 7680,    120, 256,     0},
2389     {210, 8192,    120, 1024,    0},
2390     {210, 8704,    120, 512,     1},
2391     {210, 9216,    120, 1024,    0},
2392     {210, 9728,    120, 128,     0},
2393     {210, 10240,   120, 2048,    0},
2394     {210, 20480,   120, 2048,    0},
2395     {210, 30720,   120, 256,     0},
2396     {210, 40960,   120, 8192,    0},
2397     {210, 51200,   120, 128,     0},
2398     {210, 61440,   120, 4096,    0},
2399     {210, 71680,   120, 71680,   0},
2400     {210, 81920,   120, 81920,   0},
2401     {210, 92160,   120, 92160,   0},
2402     {210, 102400,  120, 102400,  0},
2403     {210, 204800,  120, 204800,  0},
2404     {210, 307200,  120, 307200,  0},
2405     {210, 409600,  120, 409600,  0},
2406     {210, 512000,  120, 256,     0},
2407     {210, 614400,  120, 128,     0},
2408     {210, 716800,  120, 1024,    0},
2409     {210, 819200,  120, 2048,    0},
2410     {210, 921600,  120, 4096,    0},
2411     {210, 1024000, 120, 8192,    0},
2412     {330, 512,     165, 512,     0},
2413     {330, 1024,    165, 1024,    0},
2414     {330, 1536,    165, 128,     1},
2415     {330, 2048,    165, 1024,    1},
2416     {330, 2560,    165, 512,     1},
2417     {330, 3072,    165, 256,     1},
2418     {330, 3584,    165, 512,     1},
2419     {330, 4096,    165, 512,     1},
2420     {330, 4608,    165, 256,     1},
2421     {330, 5120,    165, 1024,    1},
2422     {330, 5632,    165, 512,     1},
2423     {330, 6144,    165, 1024,    1},
2424     {330, 6656,    165, 512,     0},
2425     {330, 7168,    165, 1024,    0},
2426     {330, 7680,    165, 7680,    0},
2427     {330, 8192,    165, 8192,    0},
2428     {330, 8704,    165, 512,     0},
2429     {330, 9216,    165, 256,     0},
2430     {330, 9728,    165, 9728,    0},
2431     {330, 10240,   165, 10240,   0},
2432     {330, 20480,   165, 20480,   0},
2433     {330, 30720,   165, 30720,   0},
2434     {330, 40960,   165, 4096,    0},
2435     {330, 51200,   165, 51200,   0},
2436     {330, 61440,   165, 1024,    0},
2437     {330, 71680,   165, 2048,    0},
2438     {330, 81920,   165, 16384,   0},
2439     {330, 92160,   165, 2048,    0},
2440     {330, 102400,  165, 1024,    0},
2441     {330, 204800,  165, 2048,    0},
2442     {330, 307200,  165, 128,     0},
2443     {330, 409600,  165, 128,     0},
2444     {330, 512000,  165, 1024,    0},
2445     {330, 614400,  165, 1024,    0},
2446     {330, 716800,  165, 1024,    0},
2447     {330, 819200,  165, 4096,    0},
2448     {330, 921600,  165, 4096,    0},
2449     {330, 1024000, 165, 4096,    0}
2450 };
2451