blob: 35c3f91d4088cc227b7c23e3d5daba9e33c48214 [file] [log] [blame]
Marat Dukhane06c8132021-06-03 08:59:11 -07001# Copyright 2021 Google LLC
2#
3# This source code is licensed under the BSD-style license found in the
4# LICENSE file in the root directory of this source tree.
5
Frank Barchard870108c2022-01-26 11:21:46 -08006- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8c4__aarch32_neondot_cortex_a55
7 init: xnn_init_qs8_minmax_neonv8_params
8 k-block: 8
9 assembly: true
10- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8c4__aarch32_neondot_ld64
11 init: xnn_init_qs8_minmax_neonv8_params
12 k-block: 8
13 assembly: true
Frank Barchard5e1a3032022-01-14 13:12:41 -080014- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_prfm_ld64
15 init: xnn_init_qs8_minmax_neon_params
16 k-block: 8
17 assembly: true
18- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_ld64
19 init: xnn_init_qs8_minmax_neon_params
20 k-block: 8
21 assembly: true
22- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_ld64
23 init: xnn_init_qs8_minmax_neonv8_params
24 k-block: 8
25 assembly: true
26- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_ld64
27 init: xnn_init_qs8_minmax_neonv8_params
28 k-block: 8
29 assembly: true
Frank Barchardf6237402022-01-05 00:26:09 -080030- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8__neon_mlal_lane
31 init: xnn_init_qs8_minmax_neon_params
32 k-block: 8
33- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8__neon_mlal_lane
34 init: xnn_init_qs8_minmax_neon_params
35 k-block: 8
36- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x8__neon_mlal_lane
37 init: xnn_init_qs8_minmax_neon_params
38 k-block: 8
39- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8__neon_mlal_lane
40 init: xnn_init_qs8_minmax_neon_params
41 k-block: 8
42- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x8__neon_mlal_lane
43 init: xnn_init_qs8_minmax_neon_params
44 k-block: 8
45- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x16__neon_mlal_lane
46 init: xnn_init_qs8_minmax_neon_params
47 k-block: 8
48- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x16__neon_mlal_lane
49 init: xnn_init_qs8_minmax_neon_params
50 k-block: 8
51- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x16__neon_mlal_lane
52 init: xnn_init_qs8_minmax_neon_params
53 k-block: 8
54- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16__neon_mlal_lane
55 init: xnn_init_qs8_minmax_neon_params
56 k-block: 8
57- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x16__neon_mlal_lane
58 init: xnn_init_qs8_minmax_neon_params
59 k-block: 8
60- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8__neon_mlal_lane_prfm
61 init: xnn_init_qs8_minmax_neon_params
62 k-block: 8
63- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8__neon_mlal_lane_prfm
64 init: xnn_init_qs8_minmax_neon_params
65 k-block: 8
66- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x8__neon_mlal_lane_prfm
67 init: xnn_init_qs8_minmax_neon_params
68 k-block: 8
69- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8__neon_mlal_lane_prfm
70 init: xnn_init_qs8_minmax_neon_params
71 k-block: 8
72- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x8__neon_mlal_lane_prfm
73 init: xnn_init_qs8_minmax_neon_params
74 k-block: 8
75- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x16__neon_mlal_lane_prfm
76 init: xnn_init_qs8_minmax_neon_params
77 k-block: 8
78- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x16__neon_mlal_lane_prfm
79 init: xnn_init_qs8_minmax_neon_params
80 k-block: 8
81- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x16__neon_mlal_lane_prfm
82 init: xnn_init_qs8_minmax_neon_params
83 k-block: 8
84- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16__neon_mlal_lane_prfm
85 init: xnn_init_qs8_minmax_neon_params
86 k-block: 8
87- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x16__neon_mlal_lane_prfm
88 init: xnn_init_qs8_minmax_neon_params
89 k-block: 8
90- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8__neonv8_mlal_lane
91 init: xnn_init_qs8_minmax_neonv8_params
92 k-block: 8
93- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8__neonv8_mlal_lane
94 init: xnn_init_qs8_minmax_neonv8_params
95 k-block: 8
96- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x8__neonv8_mlal_lane
97 init: xnn_init_qs8_minmax_neonv8_params
98 k-block: 8
99- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8__neonv8_mlal_lane
100 init: xnn_init_qs8_minmax_neonv8_params
101 k-block: 8
102- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x8__neonv8_mlal_lane
103 init: xnn_init_qs8_minmax_neonv8_params
104 k-block: 8
105- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x16__neonv8_mlal_lane
106 init: xnn_init_qs8_minmax_neonv8_params
107 k-block: 8
108- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x16__neonv8_mlal_lane
109 init: xnn_init_qs8_minmax_neonv8_params
110 k-block: 8
111- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x16__neonv8_mlal_lane
112 init: xnn_init_qs8_minmax_neonv8_params
113 k-block: 8
114- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16__neonv8_mlal_lane
115 init: xnn_init_qs8_minmax_neonv8_params
116 k-block: 8
117- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x16__neonv8_mlal_lane
118 init: xnn_init_qs8_minmax_neonv8_params
119 k-block: 8
120- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8__neonv8_mlal_lane_prfm
121 init: xnn_init_qs8_minmax_neonv8_params
122 k-block: 8
123- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8__neonv8_mlal_lane_prfm
124 init: xnn_init_qs8_minmax_neonv8_params
125 k-block: 8
126- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x8__neonv8_mlal_lane_prfm
127 init: xnn_init_qs8_minmax_neonv8_params
128 k-block: 8
129- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8__neonv8_mlal_lane_prfm
130 init: xnn_init_qs8_minmax_neonv8_params
131 k-block: 8
132- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x8__neonv8_mlal_lane_prfm
133 init: xnn_init_qs8_minmax_neonv8_params
134 k-block: 8
135- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x16__neonv8_mlal_lane_prfm
136 init: xnn_init_qs8_minmax_neonv8_params
137 k-block: 8
138- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x16__neonv8_mlal_lane_prfm
139 init: xnn_init_qs8_minmax_neonv8_params
140 k-block: 8
141- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x16__neonv8_mlal_lane_prfm
142 init: xnn_init_qs8_minmax_neonv8_params
143 k-block: 8
144- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16__neonv8_mlal_lane_prfm
145 init: xnn_init_qs8_minmax_neonv8_params
146 k-block: 8
147- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x16__neonv8_mlal_lane_prfm
148 init: xnn_init_qs8_minmax_neonv8_params
149 k-block: 8
Zhi An Ng4c1fd6f2022-01-10 19:35:06 -0800150- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld1r
151 init: xnn_init_qs8_minmax_neon_params
152 k-block: 16
153- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld1r
154 init: xnn_init_qs8_minmax_neon_params
155 k-block: 16
156- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld1r
157 init: xnn_init_qs8_minmax_neonv8_params
158 k-block: 16
159- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld1r
160 init: xnn_init_qs8_minmax_neonv8_params
161 k-block: 16
162- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld2r
163 init: xnn_init_qs8_minmax_neon_params
164 k-block: 16
165- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld2r
166 init: xnn_init_qs8_minmax_neon_params
167 k-block: 16
168- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld2r
169 init: xnn_init_qs8_minmax_neonv8_params
170 k-block: 16
171- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld2r
172 init: xnn_init_qs8_minmax_neonv8_params
173 k-block: 16
174- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld4r
175 init: xnn_init_qs8_minmax_neon_params
176 k-block: 16
177- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld4r
178 init: xnn_init_qs8_minmax_neon_params
179 k-block: 16
180- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld4r
181 init: xnn_init_qs8_minmax_neonv8_params
182 k-block: 16
183- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld4r
184 init: xnn_init_qs8_minmax_neonv8_params
185 k-block: 16
186- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c4s2__neon_mlal
187 init: xnn_init_qs8_minmax_neon_params
188 k-block: 16
189- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c4s2__neon_mlal
190 init: xnn_init_qs8_minmax_neon_params
191 k-block: 16
192- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c4s2__neonv8_mlal
193 init: xnn_init_qs8_minmax_neonv8_params
194 k-block: 16
195- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c4s2__neonv8_mlal
196 init: xnn_init_qs8_minmax_neonv8_params
197 k-block: 16
198- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2s4__neon_mlal
199 init: xnn_init_qs8_minmax_neon_params
200 k-block: 16
201- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2s4__neon_mlal
202 init: xnn_init_qs8_minmax_neon_params
203 k-block: 16
204- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2s4__neonv8_mlal
205 init: xnn_init_qs8_minmax_neonv8_params
206 k-block: 16
207- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2s4__neonv8_mlal
208 init: xnn_init_qs8_minmax_neonv8_params
209 k-block: 16
210- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c4__neon_mlal_dup
211 init: xnn_init_qs8_minmax_neon_params
212 k-block: 16
213- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c4__neon_mlal_dup
214 init: xnn_init_qs8_minmax_neon_params
215 k-block: 16
216- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_dup
217 init: xnn_init_qs8_minmax_neonv8_params
218 k-block: 16
219- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_dup
220 init: xnn_init_qs8_minmax_neonv8_params
221 k-block: 16
222- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c4__neon_mlal_ld1r
223 init: xnn_init_qs8_minmax_neon_params
224 k-block: 16
225- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c4__neon_mlal_ld1r
226 init: xnn_init_qs8_minmax_neon_params
227 k-block: 16
228- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_ld1r
229 init: xnn_init_qs8_minmax_neonv8_params
230 k-block: 16
231- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_ld1r
232 init: xnn_init_qs8_minmax_neonv8_params
233 k-block: 16
234- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c4__neon_mlal_ld2r
235 init: xnn_init_qs8_minmax_neon_params
236 k-block: 16
237- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c4__neon_mlal_ld2r
238 init: xnn_init_qs8_minmax_neon_params
239 k-block: 16
240- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_ld2r
241 init: xnn_init_qs8_minmax_neonv8_params
242 k-block: 16
243- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_ld2r
244 init: xnn_init_qs8_minmax_neonv8_params
245 k-block: 16
246- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2__neon_mlal_dup
247 init: xnn_init_qs8_minmax_neon_params
248 k-block: 16
249- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2__neon_mlal_dup
250 init: xnn_init_qs8_minmax_neon_params
251 k-block: 16
252- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_dup
253 init: xnn_init_qs8_minmax_neonv8_params
254 k-block: 16
255- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_dup
256 init: xnn_init_qs8_minmax_neonv8_params
257 k-block: 16
258- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal
259 init: xnn_init_qs8_minmax_neonv8_params
260 k-block: 16
261 assembly: true
262- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_prfm
263 init: xnn_init_qs8_minmax_neonv8_params
264 k-block: 16
265 assembly: true
266- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_cortex_a53
267 init: xnn_init_qs8_minmax_neonv8_params
268 k-block: 16
269 assembly: true
270- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_prfm_cortex_a53
271 init: xnn_init_qs8_minmax_neonv8_params
272 k-block: 16
273 assembly: true
274- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c16__aarch64_neon_mlal
275 init: xnn_init_qs8_minmax_neonv8_params
276 k-block: 16
277 assembly: true
278- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal
279 init: xnn_init_qs8_minmax_neonv8_params
280 k-block: 16
281 assembly: true
282- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_prfm
283 init: xnn_init_qs8_minmax_neonv8_params
284 k-block: 16
285 assembly: true
286- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_cortex_a53
287 init: xnn_init_qs8_minmax_neonv8_params
288 k-block: 16
289 assembly: true
290- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_prfm_cortex_a53
291 init: xnn_init_qs8_minmax_neonv8_params
292 k-block: 16
293 assembly: true
Frank Barchard5cffb642021-11-22 13:59:43 -0800294- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_prfm_ld64
Marat Dukhan7988a182021-12-06 22:00:33 -0800295 init: xnn_init_qs8_minmax_neonv8_params
Frank Barchard98af05c2021-06-30 12:15:04 -0700296 k-block: 8
Frank Barcharde4d3f762021-12-23 15:31:43 -0800297 assembly: true
Frank Barchard5cffb642021-11-22 13:59:43 -0800298- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_ld64
Marat Dukhan7988a182021-12-06 22:00:33 -0800299 init: xnn_init_qs8_minmax_neonv8_params
Frank Barchard98af05c2021-06-30 12:15:04 -0700300 k-block: 8
Frank Barcharde4d3f762021-12-23 15:31:43 -0800301 assembly: true
Zhi An Ng4c1fd6f2022-01-10 19:35:06 -0800302- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_cortex_a55
303 init: xnn_init_qs8_minmax_neonv8_params
304 k-block: 16
305 assembly: true
306- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld64
307 init: xnn_init_qs8_minmax_neonv8_params
308 k-block: 8
309 assembly: true
310- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld128
311 init: xnn_init_qs8_minmax_neonv8_params
312 k-block: 16
313 assembly: true
314- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c8__neon_mlal
315 init: xnn_init_qs8_minmax_neon_params
316 k-block: 16
317- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c8__neon_mlal
318 init: xnn_init_qs8_minmax_neon_params
319 k-block: 16
320- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c8__neonv8_mlal
321 init: xnn_init_qs8_minmax_neonv8_params
322 k-block: 16
323- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c8__neonv8_mlal
324 init: xnn_init_qs8_minmax_neonv8_params
325 k-block: 16
326- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c4__neondot
327 init: xnn_init_qs8_minmax_neonv8_params
328 k-block: 8
329- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x8c4__neondot
330 init: xnn_init_qs8_minmax_neonv8_params
331 k-block: 8
332- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x8c4__neondot
333 init: xnn_init_qs8_minmax_neonv8_params
334 k-block: 8
335- name: xnn_qc8_igemm_minmax_fp32_ukernel_8x8c4__neondot
336 init: xnn_init_qs8_minmax_neonv8_params
337 k-block: 8
338- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x16c4__neondot
339 init: xnn_init_qs8_minmax_neonv8_params
340 k-block: 8
341- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16c4__neondot
342 init: xnn_init_qs8_minmax_neonv8_params
343 k-block: 8
344- name: xnn_qc8_igemm_minmax_fp32_ukernel_6x16c4__neondot
345 init: xnn_init_qs8_minmax_neonv8_params
346 k-block: 8
347- name: xnn_qc8_igemm_minmax_fp32_ukernel_8x16c4__neondot
348 init: xnn_init_qs8_minmax_neonv8_params
349 k-block: 8
350- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__sse2_ld64
351 init: xnn_init_qs8_minmax_sse2_params
352 k-block: 8
353- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__sse2_ld64
354 init: xnn_init_qs8_minmax_sse2_params
355 k-block: 8
356- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__sse2_ld64
357 init: xnn_init_qs8_minmax_sse2_params
358 k-block: 8
359- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__sse2_ld64
360 init: xnn_init_qs8_minmax_sse2_params
361 k-block: 8
362- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__sse41_ld64
363 init: xnn_init_qs8_minmax_sse4_params
364 k-block: 8
365- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__sse41_ld64
366 init: xnn_init_qs8_minmax_sse4_params
367 k-block: 8
368- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__sse41_ld64
369 init: xnn_init_qs8_minmax_sse4_params
370 k-block: 8
371- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__sse41_ld64
372 init: xnn_init_qs8_minmax_sse4_params
373 k-block: 8
374- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__avx_ld64
375 init: xnn_init_qs8_minmax_sse4_params
376 k-block: 8
377- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__avx_ld64
378 init: xnn_init_qs8_minmax_sse4_params
379 k-block: 8
380- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__avx_ld64
381 init: xnn_init_qs8_minmax_sse4_params
382 k-block: 8
383- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__avx_ld64
384 init: xnn_init_qs8_minmax_sse4_params
385 k-block: 8
386- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__xop_ld64
387 init: xnn_init_qs8_minmax_sse4_params
388 k-block: 8
389- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__xop_ld64
390 init: xnn_init_qs8_minmax_sse4_params
391 k-block: 8
392- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__xop_ld64
393 init: xnn_init_qs8_minmax_sse4_params
394 k-block: 8
395- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__xop_ld64
396 init: xnn_init_qs8_minmax_sse4_params
397 k-block: 8
398- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__sse2_ld128
399 init: xnn_init_qs8_minmax_sse2_params
400 k-block: 8
401- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__sse2_ld128
402 init: xnn_init_qs8_minmax_sse2_params
403 k-block: 8
404- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__sse2_ld128
405 init: xnn_init_qs8_minmax_sse2_params
406 k-block: 8
407- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__sse2_ld128
408 init: xnn_init_qs8_minmax_sse2_params
409 k-block: 8
410- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__sse41_ld128
411 init: xnn_init_qs8_minmax_sse4_params
412 k-block: 8
413- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__sse41_ld128
414 init: xnn_init_qs8_minmax_sse4_params
415 k-block: 8
416- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__sse41_ld128
417 init: xnn_init_qs8_minmax_sse4_params
418 k-block: 8
419- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__sse41_ld128
420 init: xnn_init_qs8_minmax_sse4_params
421 k-block: 8
422- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__avx_ld128
423 init: xnn_init_qs8_minmax_sse4_params
424 k-block: 8
425- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__avx_ld128
426 init: xnn_init_qs8_minmax_sse4_params
427 k-block: 8
428- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__avx_ld128
429 init: xnn_init_qs8_minmax_sse4_params
430 k-block: 8
431- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__avx_ld128
432 init: xnn_init_qs8_minmax_sse4_params
433 k-block: 8
434- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__xop_ld128
435 init: xnn_init_qs8_minmax_sse4_params
436 k-block: 8
437- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__xop_ld128
438 init: xnn_init_qs8_minmax_sse4_params
439 k-block: 8
440- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__xop_ld128
441 init: xnn_init_qs8_minmax_sse4_params
442 k-block: 8
443- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__xop_ld128
444 init: xnn_init_qs8_minmax_sse4_params
445 k-block: 8
446- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__sse2_ld64
447 init: xnn_init_qs8_minmax_sse2_params
448 k-block: 8
449- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__sse2_ld64
450 init: xnn_init_qs8_minmax_sse2_params
451 k-block: 8
452- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__sse2_ld64
453 init: xnn_init_qs8_minmax_sse2_params
454 k-block: 8
455- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__sse41_ld64
456 init: xnn_init_qs8_minmax_sse4_params
457 k-block: 8
458- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__sse41_ld64
459 init: xnn_init_qs8_minmax_sse4_params
460 k-block: 8
461- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__sse41_ld64
462 init: xnn_init_qs8_minmax_sse4_params
463 k-block: 8
464- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__avx_ld64
465 init: xnn_init_qs8_minmax_sse4_params
466 k-block: 8
467- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__avx_ld64
468 init: xnn_init_qs8_minmax_sse4_params
469 k-block: 8
470- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__avx_ld64
471 init: xnn_init_qs8_minmax_sse4_params
472 k-block: 8
473- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__xop_ld64
474 init: xnn_init_qs8_minmax_sse4_params
475 k-block: 8
476- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__xop_ld64
477 init: xnn_init_qs8_minmax_sse4_params
478 k-block: 8
479- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__xop_ld64
480 init: xnn_init_qs8_minmax_sse4_params
481 k-block: 8
482- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__sse2_ld128
483 init: xnn_init_qs8_minmax_sse2_params
484 k-block: 8
485- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__sse2_ld128
486 init: xnn_init_qs8_minmax_sse2_params
487 k-block: 8
488- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__sse2_ld128
489 init: xnn_init_qs8_minmax_sse2_params
490 k-block: 8
491- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__sse41_ld128
492 init: xnn_init_qs8_minmax_sse4_params
493 k-block: 8
494- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__sse41_ld128
495 init: xnn_init_qs8_minmax_sse4_params
496 k-block: 8
497- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__sse41_ld128
498 init: xnn_init_qs8_minmax_sse4_params
499 k-block: 8
500- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__avx_ld128
501 init: xnn_init_qs8_minmax_sse4_params
502 k-block: 8
503- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__avx_ld128
504 init: xnn_init_qs8_minmax_sse4_params
505 k-block: 8
506- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__avx_ld128
507 init: xnn_init_qs8_minmax_sse4_params
508 k-block: 8
509- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__xop_ld128
510 init: xnn_init_qs8_minmax_sse4_params
511 k-block: 8
512- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__xop_ld128
513 init: xnn_init_qs8_minmax_sse4_params
514 k-block: 8
515- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__xop_ld128
516 init: xnn_init_qs8_minmax_sse4_params
517 k-block: 8
518- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x8c8__avx2
519 init: xnn_init_qs8_minmax_avx2_params
520 k-block: 8
521- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x8c8__avx2
522 init: xnn_init_qs8_minmax_avx2_params
523 k-block: 8
524- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x8c8__avx2
525 init: xnn_init_qs8_minmax_avx2_params
526 k-block: 8
527- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x16c8__avx512skx
528 init: xnn_init_qs8_minmax_avx512_params
529 k-block: 8
530- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x16c8__avx512skx
531 init: xnn_init_qs8_minmax_avx512_params
532 k-block: 8
533- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x16c8__avx512skx
534 init: xnn_init_qs8_minmax_avx512_params
535 k-block: 8
536- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x16c8__avx512skx
537 init: xnn_init_qs8_minmax_avx512_params
538 k-block: 8
539- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld64
540 init: xnn_init_qs8_minmax_wasmsimd_params
541 k-block: 8
542- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld64
543 init: xnn_init_qs8_minmax_wasmsimd_params
544 k-block: 8
545- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld64
546 init: xnn_init_qs8_minmax_wasmsimd_params
547 k-block: 8
548- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld64
549 init: xnn_init_qs8_minmax_wasmsimd_params
550 k-block: 8
551- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld128
552 init: xnn_init_qs8_minmax_wasmsimd_params
553 k-block: 8
554- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld128
555 init: xnn_init_qs8_minmax_wasmsimd_params
556 k-block: 8
557- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld128
558 init: xnn_init_qs8_minmax_wasmsimd_params
559 k-block: 8
560- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld128
561 init: xnn_init_qs8_minmax_wasmsimd_params
562 k-block: 8
563- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld64
564 init: xnn_init_qs8_minmax_wasmsimd_params
565 k-block: 8
566- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld64
567 init: xnn_init_qs8_minmax_wasmsimd_params
568 k-block: 8
569- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld64
570 init: xnn_init_qs8_minmax_wasmsimd_params
571 k-block: 8
572- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld64
573 init: xnn_init_qs8_minmax_wasmsimd_params
574 k-block: 8
575- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld128
576 init: xnn_init_qs8_minmax_wasmsimd_params
577 k-block: 8
578- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld128
579 init: xnn_init_qs8_minmax_wasmsimd_params
580 k-block: 8
581- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld128
582 init: xnn_init_qs8_minmax_wasmsimd_params
583 k-block: 8
584- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld128
585 init: xnn_init_qs8_minmax_wasmsimd_params
586 k-block: 8
587- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld64
588 init: xnn_init_qs8_minmax_wasmsimd_params
589 k-block: 8
590- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld64
591 init: xnn_init_qs8_minmax_wasmsimd_params
592 k-block: 8
593- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld64
594 init: xnn_init_qs8_minmax_wasmsimd_params
595 k-block: 8
596- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld64
597 init: xnn_init_qs8_minmax_wasmsimd_params
598 k-block: 8
599- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld128
600 init: xnn_init_qs8_minmax_wasmsimd_params
601 k-block: 8
602- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld128
603 init: xnn_init_qs8_minmax_wasmsimd_params
604 k-block: 8
605- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld128
606 init: xnn_init_qs8_minmax_wasmsimd_params
607 k-block: 8
608- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld128
609 init: xnn_init_qs8_minmax_wasmsimd_params
610 k-block: 8
611- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__wasmsimd_mul16_ld64
612 init: xnn_init_qs8_minmax_wasmsimd_params
613 k-block: 8
614- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__wasmsimd_mul16_ld64
615 init: xnn_init_qs8_minmax_wasmsimd_params
616 k-block: 8
617- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__wasmsimd_mul16_ld64
618 init: xnn_init_qs8_minmax_wasmsimd_params
619 k-block: 8
620- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4c8__wasmsimd_mul16_ld128
621 init: xnn_init_qs8_minmax_wasmsimd_params
622 k-block: 8
623- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4c8__wasmsimd_mul16_ld128
624 init: xnn_init_qs8_minmax_wasmsimd_params
625 k-block: 8
626- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4c8__wasmsimd_mul16_ld128
627 init: xnn_init_qs8_minmax_wasmsimd_params
628 k-block: 8
Marat Dukhan7c1115f2022-01-04 17:18:41 -0800629- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x2__wasm_fmagic
630 init: xnn_init_qs8_minmax_scalar_fmagic_params
631 k-block: 1
632- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x2__wasm_fmagic
633 init: xnn_init_qs8_minmax_scalar_fmagic_params
634 k-block: 1
635- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x2__wasm_fmagic
636 init: xnn_init_qs8_minmax_scalar_fmagic_params
637 k-block: 1
638- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x2__wasm_fmagic
639 init: xnn_init_qs8_minmax_scalar_fmagic_params
640 k-block: 1
641- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4__wasm_fmagic
642 init: xnn_init_qs8_minmax_scalar_fmagic_params
643 k-block: 1
644- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4__wasm_fmagic
645 init: xnn_init_qs8_minmax_scalar_fmagic_params
646 k-block: 1
647- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4__wasm_fmagic
648 init: xnn_init_qs8_minmax_scalar_fmagic_params
649 k-block: 1
650- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4__wasm_fmagic
651 init: xnn_init_qs8_minmax_scalar_fmagic_params
652 k-block: 1
Marat Dukhan2ac722e2022-01-04 01:54:20 -0800653- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x2__scalar_fmagic
654 init: xnn_init_qs8_minmax_scalar_fmagic_params
Marat Dukhand6021542021-06-30 09:04:20 -0700655 k-block: 1
Marat Dukhan2ac722e2022-01-04 01:54:20 -0800656- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x2__scalar_fmagic
657 init: xnn_init_qs8_minmax_scalar_fmagic_params
Marat Dukhand6021542021-06-30 09:04:20 -0700658 k-block: 1
Marat Dukhan2ac722e2022-01-04 01:54:20 -0800659- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x2__scalar_fmagic
660 init: xnn_init_qs8_minmax_scalar_fmagic_params
Marat Dukhand6021542021-06-30 09:04:20 -0700661 k-block: 1
Marat Dukhan2ac722e2022-01-04 01:54:20 -0800662- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x2__scalar_fmagic
663 init: xnn_init_qs8_minmax_scalar_fmagic_params
Marat Dukhand6021542021-06-30 09:04:20 -0700664 k-block: 1
Marat Dukhan2ac722e2022-01-04 01:54:20 -0800665- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4__scalar_fmagic
666 init: xnn_init_qs8_minmax_scalar_fmagic_params
Marat Dukhand6021542021-06-30 09:04:20 -0700667 k-block: 1
Marat Dukhan2ac722e2022-01-04 01:54:20 -0800668- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4__scalar_fmagic
669 init: xnn_init_qs8_minmax_scalar_fmagic_params
Marat Dukhand6021542021-06-30 09:04:20 -0700670 k-block: 1
Marat Dukhan2ac722e2022-01-04 01:54:20 -0800671- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4__scalar_fmagic
672 init: xnn_init_qs8_minmax_scalar_fmagic_params
Marat Dukhand6021542021-06-30 09:04:20 -0700673 k-block: 1
Marat Dukhan2ac722e2022-01-04 01:54:20 -0800674- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4__scalar_fmagic
675 init: xnn_init_qs8_minmax_scalar_fmagic_params
Marat Dukhand6021542021-06-30 09:04:20 -0700676 k-block: 1
Marat Dukhan272d4d92022-01-04 15:07:14 -0800677- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x2__scalar_imagic
678 init: xnn_init_qs8_minmax_scalar_imagic_params
679 k-block: 1
680- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x2__scalar_imagic
681 init: xnn_init_qs8_minmax_scalar_imagic_params
682 k-block: 1
683- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x2__scalar_imagic
684 init: xnn_init_qs8_minmax_scalar_imagic_params
685 k-block: 1
686- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x2__scalar_imagic
687 init: xnn_init_qs8_minmax_scalar_imagic_params
688 k-block: 1
689- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4__scalar_imagic
690 init: xnn_init_qs8_minmax_scalar_imagic_params
691 k-block: 1
692- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4__scalar_imagic
693 init: xnn_init_qs8_minmax_scalar_imagic_params
694 k-block: 1
695- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4__scalar_imagic
696 init: xnn_init_qs8_minmax_scalar_imagic_params
697 k-block: 1
698- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4__scalar_imagic
699 init: xnn_init_qs8_minmax_scalar_imagic_params
700 k-block: 1
701- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x2__scalar_lrintf
702 init: xnn_init_qs8_minmax_scalar_lrintf_params
703 k-block: 1
704- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x2__scalar_lrintf
705 init: xnn_init_qs8_minmax_scalar_lrintf_params
706 k-block: 1
707- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x2__scalar_lrintf
708 init: xnn_init_qs8_minmax_scalar_lrintf_params
709 k-block: 1
710- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x2__scalar_lrintf
711 init: xnn_init_qs8_minmax_scalar_lrintf_params
712 k-block: 1
713- name: xnn_qc8_igemm_minmax_fp32_ukernel_1x4__scalar_lrintf
714 init: xnn_init_qs8_minmax_scalar_lrintf_params
715 k-block: 1
716- name: xnn_qc8_igemm_minmax_fp32_ukernel_2x4__scalar_lrintf
717 init: xnn_init_qs8_minmax_scalar_lrintf_params
718 k-block: 1
719- name: xnn_qc8_igemm_minmax_fp32_ukernel_3x4__scalar_lrintf
720 init: xnn_init_qs8_minmax_scalar_lrintf_params
721 k-block: 1
722- name: xnn_qc8_igemm_minmax_fp32_ukernel_4x4__scalar_lrintf
723 init: xnn_init_qs8_minmax_scalar_lrintf_params
724 k-block: 1
Zhi An Ng4c1fd6f2022-01-10 19:35:06 -0800725- name: xnn_generate_qc8_igemm_fp32_ukernel_4x8c4__aarch32_neondot_ld64
726 init: xnn_init_qs8_minmax_neonv8_params
727 k-block: 8
728 assembly: true
Zhi An Ng16b734c2022-01-06 13:54:40 -0800729- name: xnn_generate_qc8_igemm_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_ld64
730 init: xnn_init_qs8_minmax_neonv8_params
731 k-block: 8
732 assembly: true
733- name: xnn_generate_qc8_igemm_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_ld64
734 init: xnn_init_qs8_minmax_neonv8_params
735 k-block: 8
736 assembly: true