blob: 4801bd249110428f8b45377bc6acb49cd7ed8fa4 [file] [log] [blame]
XNNPACK Teamb455b122019-09-27 18:10:33 -07001# Copyright 2019 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.
Frank Barchard21be34f2019-10-09 19:32:19 -07005- name: xnn_f32_igemm_ukernel_1x8__aarch64_neonfma_cortex_a53
6 k-block: 8
7 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -07008 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -07009- name: xnn_f32_igemm_ukernel_1x8__aarch64_neonfma_cortex_a57
10 k-block: 8
11 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070012 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070013- name: xnn_f32_igemm_ukernel_1x8__aarch64_neonfma_cortex_a75
14 k-block: 8
15 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070016 assembly: true
Frank Barchard46fb8072019-10-25 12:54:22 -070017- name: xnn_f32_igemm_ukernel_4x8__aarch64_neonfma_cortex_a53
Frank Barchard7c8e0c72019-11-17 00:02:36 -080018 k-block: 4
19 pipelined: true
Frank Barchard46fb8072019-10-25 12:54:22 -070020 assembly: true
Frank Barchard8fb90552020-03-16 11:36:09 -070021- name: xnn_f32_igemm_ukernel_4x8__aarch64_neonfma_cortex_a55
22 k-block: 4
23 pipelined: true
24 assembly: true
Frank Barchard387c2d12019-12-16 19:14:07 -080025- name: xnn_f32_igemm_ukernel_4x8__aarch64_neonfma_cortex_a57
26 k-block: 8
27 pipelined: true
28 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070029- name: xnn_f32_igemm_ukernel_4x8__aarch64_neonfma_cortex_a75
30 k-block: 8
31 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070032 assembly: true
Frank Barcharddc38f072020-02-10 13:21:42 -080033- name: xnn_f32_igemm_ukernel_4x8__aarch32_neon_ld64
34 k-block: 2
35 pipelined: false
Frank Barchard90ce7892020-02-10 23:35:45 -080036- name: xnn_f32_igemm_ukernel_4x8__aarch32_neon_cortex_a75
37 k-block: 4
38 pipelined: true
39- name: xnn_f32_igemm_ukernel_4x8__aarch32_neon_pld_cortex_a75
40 k-block: 4
41 pipelined: true
Frank Barchardc87a8fd2020-02-12 13:02:52 -080042- name: xnn_f32_igemm_ukernel_4x8__aarch32_neon_cortex_a53
43 k-block: 4
44 pipelined: true
Frank Barchardb7dd29e2020-03-11 12:37:10 -070045- name: xnn_f32_igemm_ukernel_4x8__aarch32_neon_cortex_a55
46 k-block: 4
47 pipelined: true
Frank Barchard387c2d12019-12-16 19:14:07 -080048- name: xnn_f32_igemm_ukernel_5x8__aarch64_neonfma_cortex_a57
49 k-block: 8
50 pipelined: true
51 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070052- name: xnn_f32_igemm_ukernel_5x8__aarch64_neonfma_cortex_a75
53 k-block: 8
54 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070055 assembly: true
Frank Barcharda7fb8552019-10-23 17:14:17 -070056- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_cortex_a53
Frank Barchard80b537a2019-11-18 10:51:33 -080057 k-block: 4
58 pipelined: true
Frank Barcharda7fb8552019-10-23 17:14:17 -070059 assembly: true
Frank Barchard91e19992020-03-09 18:46:14 -070060- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_cortex_a55
61 k-block: 4
62 pipelined: true
63 assembly: true
Frank Barcharda7fb8552019-10-23 17:14:17 -070064- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_cortex_a73
XNNPACK Teamb455b122019-09-27 18:10:33 -070065 k-block: 8
66 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070067 assembly: true
Frank Barchard387c2d12019-12-16 19:14:07 -080068- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_cortex_a57
69 k-block: 8
70 pipelined: true
71 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070072- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_cortex_a75
73 k-block: 8
74 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070075 assembly: true
Frank Barchard0d1052c2020-03-23 17:28:13 -070076- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_ios
77 k-block: 8
78 pipelined: true
79 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070080- name: xnn_f32_igemm_ukernel_1x12__aarch64_neonfma_cortex_a53
81 k-block: 4
82 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070083 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070084- name: xnn_f32_igemm_ukernel_4x12__aarch64_neonfma_cortex_a53
85 k-block: 4
86 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070087 assembly: true
Frank Barchard91317c52019-11-22 10:54:35 -080088- name: xnn_f32_igemm_ukernel_1x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070089 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080090- name: xnn_f32_igemm_ukernel_4x2__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070091 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080092- name: xnn_f32_igemm_ukernel_4x4__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070093 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080094- name: xnn_f32_igemm_ukernel_4x8__neon_lane_ld128
XNNPACK Teamb455b122019-09-27 18:10:33 -070095 k-block: 4
Frank Barchard91317c52019-11-22 10:54:35 -080096- name: xnn_f32_igemm_ukernel_4x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070097 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080098- name: xnn_f32_igemm_ukernel_6x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070099 k-block: 2
Frank Barchard69172d92019-11-26 16:22:39 -0800100- name: xnn_f32_igemm_ukernel_6x8__neon_lane_ld128
101 k-block: 4
Frank Barchard5243bb02019-11-22 16:37:50 -0800102- name: xnn_f32_igemm_ukernel_1x8__neonfma_lane_ld64
103 k-block: 2
104 arch:
105 - aarch64
Frank Barchard91317c52019-11-22 10:54:35 -0800106- name: xnn_f32_igemm_ukernel_4x2__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700107 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800108 arch:
109 - aarch64
110- name: xnn_f32_igemm_ukernel_4x4__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700111 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800112 arch:
113 - aarch64
114- name: xnn_f32_igemm_ukernel_4x8__neonfma_lane_ld128
XNNPACK Teamb455b122019-09-27 18:10:33 -0700115 k-block: 4
Frank Barchard91317c52019-11-22 10:54:35 -0800116 arch:
117 - aarch64
118- name: xnn_f32_igemm_ukernel_4x8__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700119 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800120 arch:
121 - aarch64
122- name: xnn_f32_igemm_ukernel_6x8__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700123 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800124 arch:
125 - aarch64
Frank Barchard69172d92019-11-26 16:22:39 -0800126- name: xnn_f32_igemm_ukernel_6x8__neonfma_lane_ld128
127 k-block: 4
128 arch:
129 - aarch64
Frank Barchard5243bb02019-11-22 16:37:50 -0800130- name: xnn_f32_igemm_ukernel_1x8__neon_dup_ld64
131 k-block: 2
132- name: xnn_f32_igemm_ukernel_4x8__neon_dup_ld128
133 k-block: 4
134- name: xnn_f32_igemm_ukernel_4x8__neon_dup_ld64
135 k-block: 2
136- name: xnn_f32_igemm_ukernel_6x8__neon_dup_ld64
137 k-block: 2
Frank Barchard69172d92019-11-26 16:22:39 -0800138- name: xnn_f32_igemm_ukernel_6x8__neon_dup_ld128
139 k-block: 4
Frank Barchard5243bb02019-11-22 16:37:50 -0800140- name: xnn_f32_igemm_ukernel_1x8__neonfma_dup_ld64
141 k-block: 2
142- name: xnn_f32_igemm_ukernel_4x8__neonfma_dup_ld128
143 k-block: 4
144- name: xnn_f32_igemm_ukernel_4x8__neonfma_dup_ld64
145 k-block: 2
146- name: xnn_f32_igemm_ukernel_6x8__neonfma_dup_ld64
147 k-block: 2
Frank Barchard69172d92019-11-26 16:22:39 -0800148- name: xnn_f32_igemm_ukernel_6x8__neonfma_dup_ld128
149 k-block: 4
Frank Barchard5243bb02019-11-22 16:37:50 -0800150- name: xnn_f32_igemm_ukernel_1x8s4__neon
151 k-block: 4
152- name: xnn_f32_igemm_ukernel_4x8s4__neon
153 k-block: 4
154- name: xnn_f32_igemm_ukernel_6x8s4__neon
155 k-block: 4
156- name: xnn_f32_igemm_ukernel_8x8s4__neon
157 k-block: 4
Frank Barcharddf06d802019-11-20 15:53:46 -0800158- name: xnn_f32_igemm_ukernel_1x8s4__neonfma
159 k-block: 4
160- name: xnn_f32_igemm_ukernel_4x8s4__neonfma
161 k-block: 4
162- name: xnn_f32_igemm_ukernel_6x8s4__neonfma
163 k-block: 4
164- name: xnn_f32_igemm_ukernel_8x8s4__neonfma
165 k-block: 4
XNNPACK Teamb455b122019-09-27 18:10:33 -0700166- name: xnn_f32_igemm_ukernel_1x8__sse_load1
167 k-block: 1
168- name: xnn_f32_igemm_ukernel_4x8__sse_load1
169 k-block: 1
170- name: xnn_f32_igemm_ukernel_1x8__sse_dup
171 k-block: 4
172- name: xnn_f32_igemm_ukernel_4x8__sse_dup
173 k-block: 4
Frank Barchardd42bdf72019-11-20 16:39:43 -0800174- name: xnn_f32_igemm_ukernel_1x8s4__sse
175 k-block: 4
176- name: xnn_f32_igemm_ukernel_4x8s4__sse
177 k-block: 4
XNNPACK Teamb455b122019-09-27 18:10:33 -0700178- name: xnn_f32_igemm_ukernel_4x2c4__sse
179 k-block: 4
180- name: xnn_f32_igemm_ukernel_4x2c4__psimd
181 k-block: 4
Marat Dukhanfda12b82019-11-21 12:27:59 -0800182- name: xnn_f32_igemm_ukernel_1x8__avx_broadcast
183 k-block: 1
184- name: xnn_f32_igemm_ukernel_4x8__avx_broadcast
185 k-block: 1
186- name: xnn_f32_igemm_ukernel_5x8__avx_broadcast
187 k-block: 1
188- name: xnn_f32_igemm_ukernel_6x8__avx_broadcast
189 k-block: 1
190- name: xnn_f32_igemm_ukernel_7x8__avx_broadcast
191 k-block: 1
Marat Dukhaneccfd712019-12-08 16:49:27 -0800192- name: xnn_f32_igemm_ukernel_1x16__avx_broadcast
193 k-block: 1
194- name: xnn_f32_igemm_ukernel_3x16__avx_broadcast
195 k-block: 1
196- name: xnn_f32_igemm_ukernel_4x16__avx_broadcast
197 k-block: 1
198- name: xnn_f32_igemm_ukernel_5x16__avx_broadcast
199 k-block: 1
Marat Dukhanfda12b82019-11-21 12:27:59 -0800200- name: xnn_f32_igemm_ukernel_1x8__fma3_broadcast
201 k-block: 1
202- name: xnn_f32_igemm_ukernel_4x8__fma3_broadcast
203 k-block: 1
204- name: xnn_f32_igemm_ukernel_5x8__fma3_broadcast
205 k-block: 1
206- name: xnn_f32_igemm_ukernel_6x8__fma3_broadcast
207 k-block: 1
208- name: xnn_f32_igemm_ukernel_7x8__fma3_broadcast
209 k-block: 1
210- name: xnn_f32_igemm_ukernel_8x8__fma3_broadcast
211 k-block: 1
Marat Dukhaneccfd712019-12-08 16:49:27 -0800212- name: xnn_f32_igemm_ukernel_1x16__fma3_broadcast
213 k-block: 1
214- name: xnn_f32_igemm_ukernel_3x16__fma3_broadcast
215 k-block: 1
216- name: xnn_f32_igemm_ukernel_4x16__fma3_broadcast
217 k-block: 1
218- name: xnn_f32_igemm_ukernel_5x16__fma3_broadcast
219 k-block: 1
Marat Dukhan27121322019-12-09 14:57:40 -0800220- name: xnn_f32_igemm_ukernel_1x16s4__fma3_broadcast
221 k-block: 4
222- name: xnn_f32_igemm_ukernel_3x16s4__fma3_broadcast
223 k-block: 4
224- name: xnn_f32_igemm_ukernel_4x16s4__fma3_broadcast
225 k-block: 4
226- name: xnn_f32_igemm_ukernel_5x16s4__fma3_broadcast
227 k-block: 4
Marat Dukhan0f349c42019-11-27 11:58:54 -0800228- name: xnn_f32_igemm_ukernel_1x16__avx512f_broadcast
229 k-block: 1
230- name: xnn_f32_igemm_ukernel_4x16__avx512f_broadcast
231 k-block: 1
232- name: xnn_f32_igemm_ukernel_5x16__avx512f_broadcast
233 k-block: 1
234- name: xnn_f32_igemm_ukernel_6x16__avx512f_broadcast
235 k-block: 1
236- name: xnn_f32_igemm_ukernel_7x16__avx512f_broadcast
237 k-block: 1
238- name: xnn_f32_igemm_ukernel_8x16__avx512f_broadcast
239 k-block: 1
XNNPACK Teamb455b122019-09-27 18:10:33 -0700240- name: xnn_f32_igemm_ukernel_1x8__psimd_loadsplat
241 k-block: 1
242- name: xnn_f32_igemm_ukernel_4x8__psimd_loadsplat
243 k-block: 1
244- name: xnn_f32_igemm_ukernel_6x8__psimd_loadsplat
245 k-block: 1
246- name: xnn_f32_igemm_ukernel_1x8__psimd_splat
247 k-block: 4
248- name: xnn_f32_igemm_ukernel_4x8__psimd_splat
249 k-block: 4
250- name: xnn_f32_igemm_ukernel_6x8__psimd_splat
251 k-block: 4
252- name: xnn_f32_igemm_ukernel_1x8s4__psimd
253 k-block: 4
254- name: xnn_f32_igemm_ukernel_4x8s4__psimd
255 k-block: 4
256- name: xnn_f32_igemm_ukernel_6x8s4__psimd
257 k-block: 4
Marat Dukhan436ebe62019-12-04 15:10:12 -0800258- name: xnn_f32_igemm_ukernel_1x4__wasm
259 k-block: 1
260- name: xnn_f32_igemm_ukernel_2x4__wasm
261 k-block: 1
262- name: xnn_f32_igemm_ukernel_4x4__wasm
263 k-block: 1
264- name: xnn_f32_igemm_ukernel_4x2__wasm
265 k-block: 1
XNNPACK Teamb455b122019-09-27 18:10:33 -0700266- name: xnn_f32_igemm_ukernel_1x4__scalar
267 k-block: 1
268- name: xnn_f32_igemm_ukernel_2x4__scalar
269 k-block: 1
270- name: xnn_f32_igemm_ukernel_4x4__scalar
271 k-block: 1
272- name: xnn_f32_igemm_ukernel_4x2__scalar
273 k-block: 1