blob: 240833195df56f23cb76e0e4f5eac6e7ba679fef [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_gemm_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_gemm_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_gemm_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_gemm_ukernel_4x8__aarch64_neonfma_cortex_a53
Frank Barchard0ecc2ab2019-11-14 10:57:48 -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_gemm_ukernel_4x8__aarch64_neonfma_cortex_a55
22 k-block: 4
23 pipelined: true
24 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070025- name: xnn_f32_gemm_ukernel_4x8__aarch64_neonfma_cortex_a57
26 k-block: 8
27 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070028 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070029- name: xnn_f32_gemm_ukernel_4x8__aarch64_neonfma_cortex_a75
30 k-block: 8
31 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070032 assembly: true
Frank Barchard387c2d12019-12-16 19:14:07 -080033- name: xnn_f32_gemm_ukernel_5x8__aarch64_neonfma_cortex_a57
34 k-block: 8
35 pipelined: true
36 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070037- name: xnn_f32_gemm_ukernel_5x8__aarch64_neonfma_cortex_a75
38 k-block: 8
39 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070040 assembly: true
Frank Barcharda7fb8552019-10-23 17:14:17 -070041- name: xnn_f32_gemm_ukernel_6x8__aarch64_neonfma_cortex_a53
Frank Barchard00bf68e2019-10-27 03:00:09 -070042 k-block: 4
Frank Barcharde64f91a2019-11-11 13:18:00 -080043 pipelined: true
Frank Barcharda7fb8552019-10-23 17:14:17 -070044 assembly: true
Frank Barchard91e19992020-03-09 18:46:14 -070045- name: xnn_f32_gemm_ukernel_6x8__aarch64_neonfma_cortex_a55
46 k-block: 4
47 pipelined: true
48 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070049- name: xnn_f32_gemm_ukernel_6x8__aarch64_neonfma_cortex_a73
50 k-block: 8
51 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070052 assembly: true
Frank Barchard387c2d12019-12-16 19:14:07 -080053- name: xnn_f32_gemm_ukernel_6x8__aarch64_neonfma_cortex_a57
54 k-block: 8
55 pipelined: true
56 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070057- name: xnn_f32_gemm_ukernel_6x8__aarch64_neonfma_cortex_a75
58 k-block: 8
59 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070060 assembly: true
Frank Barchard0d1052c2020-03-23 17:28:13 -070061- name: xnn_f32_gemm_ukernel_6x8__aarch64_neonfma_ios
62 k-block: 8
63 pipelined: true
64 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070065- name: xnn_f32_gemm_ukernel_1x12__aarch64_neonfma_cortex_a53
66 k-block: 4
67 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070068 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070069- name: xnn_f32_gemm_ukernel_4x12__aarch64_neonfma_cortex_a53
70 k-block: 4
71 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070072 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070073- name: xnn_f32_gemm_ukernel_4x8__aarch64_neonfma_ld64
74 k-block: 2
Frank Barchard7e955972019-10-11 10:34:25 -070075 assembly: true
Frank Barchard13916042019-12-11 10:56:34 -080076- name: xnn_f32_gemm_ukernel_4x8__aarch32_neon_cortex_a53
77 k-block: 4
Frank Barchardca27b402020-02-03 17:47:32 -080078 pipelined: true
Frank Barchardb7dd29e2020-03-11 12:37:10 -070079- name: xnn_f32_gemm_ukernel_4x8__aarch32_neon_cortex_a55
80 k-block: 4
81 pipelined: true
Frank Barchard3e237f22019-12-04 23:08:51 -080082- name: xnn_f32_gemm_ukernel_4x8__aarch32_neon_cortex_a75
83 k-block: 4
Frank Barchardca27b402020-02-03 17:47:32 -080084 pipelined: true
Frank Barchard9f7d5552019-12-12 10:58:10 -080085- name: xnn_f32_gemm_ukernel_4x8__aarch32_neon_pld_cortex_a75
86 k-block: 4
Frank Barchardca27b402020-02-03 17:47:32 -080087 pipelined: true
Frank Barchard8b0f0262019-11-27 23:18:40 -080088- name: xnn_f32_gemm_ukernel_4x8__aarch32_neon_ld64
89 k-block: 2
XNNPACK Teamb455b122019-09-27 18:10:33 -070090- name: xnn_f32_gemm_ukernel_4x8__aarch64_neonfma_ld128
91 k-block: 4
Frank Barchard7e955972019-10-11 10:34:25 -070092 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070093- name: xnn_f32_gemm_ukernel_6x8__aarch64_neonfma_ld64
94 k-block: 2
Frank Barchard7e955972019-10-11 10:34:25 -070095 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070096- name: xnn_f32_gemm_ukernel_6x8__aarch64_neonfma_ld128
97 k-block: 4
Frank Barchard7e955972019-10-11 10:34:25 -070098 assembly: true
Frank Barchard91317c52019-11-22 10:54:35 -080099- name: xnn_f32_gemm_ukernel_1x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700100 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800101- name: xnn_f32_gemm_ukernel_4x2__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700102 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800103- name: xnn_f32_gemm_ukernel_4x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700104 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800105- name: xnn_f32_gemm_ukernel_4x8__neon_lane_ld128
XNNPACK Teamb455b122019-09-27 18:10:33 -0700106 k-block: 4
Frank Barchard91317c52019-11-22 10:54:35 -0800107- name: xnn_f32_gemm_ukernel_5x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700108 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800109- name: xnn_f32_gemm_ukernel_6x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700110 k-block: 2
Frank Barchard69172d92019-11-26 16:22:39 -0800111- name: xnn_f32_gemm_ukernel_6x8__neon_lane_ld128
112 k-block: 4
Frank Barchard91317c52019-11-22 10:54:35 -0800113- name: xnn_f32_gemm_ukernel_1x8__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700114 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800115 arch:
116 - aarch64
117- name: xnn_f32_gemm_ukernel_4x8__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700118 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800119 arch:
120 - aarch64
121- name: xnn_f32_gemm_ukernel_4x8__neonfma_lane_ld128
XNNPACK Teamb455b122019-09-27 18:10:33 -0700122 k-block: 4
Frank Barchard91317c52019-11-22 10:54:35 -0800123 arch:
124 - aarch64
125- name: xnn_f32_gemm_ukernel_5x8__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700126 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800127 arch:
128 - aarch64
129- name: xnn_f32_gemm_ukernel_6x8__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700130 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800131 arch:
132 - aarch64
Frank Barchard69172d92019-11-26 16:22:39 -0800133- name: xnn_f32_gemm_ukernel_6x8__neonfma_lane_ld128
134 k-block: 4
135 arch:
136 - aarch64
Frank Barchard5243bb02019-11-22 16:37:50 -0800137- name: xnn_f32_gemm_ukernel_1x8__neon_dup_ld64
138 k-block: 2
139- name: xnn_f32_gemm_ukernel_4x8__neon_dup_ld64
140 k-block: 2
141- name: xnn_f32_gemm_ukernel_4x8__neon_dup_ld128
142 k-block: 4
143- name: xnn_f32_gemm_ukernel_6x8__neon_dup_ld64
144 k-block: 2
Frank Barchard69172d92019-11-26 16:22:39 -0800145- name: xnn_f32_gemm_ukernel_6x8__neon_dup_ld128
146 k-block: 4
Frank Barchard5243bb02019-11-22 16:37:50 -0800147- name: xnn_f32_gemm_ukernel_1x8__neonfma_dup_ld64
148 k-block: 2
149- name: xnn_f32_gemm_ukernel_4x8__neonfma_dup_ld64
150 k-block: 2
151- name: xnn_f32_gemm_ukernel_4x8__neonfma_dup_ld128
152 k-block: 4
153- name: xnn_f32_gemm_ukernel_6x8__neonfma_dup_ld64
154 k-block: 2
Frank Barchard69172d92019-11-26 16:22:39 -0800155- name: xnn_f32_gemm_ukernel_6x8__neonfma_dup_ld128
156 k-block: 4
Frank Barchard5243bb02019-11-22 16:37:50 -0800157- name: xnn_f32_gemm_ukernel_1x8s4__neon
158 k-block: 4
159- name: xnn_f32_gemm_ukernel_4x8s4__neon
160 k-block: 4
161- name: xnn_f32_gemm_ukernel_6x8s4__neon
162 k-block: 4
163- name: xnn_f32_gemm_ukernel_8x8s4__neon
164 k-block: 4
Frank Barcharddf06d802019-11-20 15:53:46 -0800165- name: xnn_f32_gemm_ukernel_1x8s4__neonfma
166 k-block: 4
167- name: xnn_f32_gemm_ukernel_4x8s4__neonfma
168 k-block: 4
169- name: xnn_f32_gemm_ukernel_6x8s4__neonfma
170 k-block: 4
171- name: xnn_f32_gemm_ukernel_8x8s4__neonfma
172 k-block: 4
XNNPACK Teamb455b122019-09-27 18:10:33 -0700173- name: xnn_f32_gemm_ukernel_1x8__sse_load1
174 k-block: 1
175- name: xnn_f32_gemm_ukernel_4x8__sse_load1
176 k-block: 1
177- name: xnn_f32_gemm_ukernel_1x8__sse_dup
178 k-block: 4
179- name: xnn_f32_gemm_ukernel_4x8__sse_dup
180 k-block: 4
181- name: xnn_f32_gemm_ukernel_1x8s4__sse
182 k-block: 4
183- name: xnn_f32_gemm_ukernel_4x8s4__sse
184 k-block: 4
Marat Dukhanb00004d2020-02-13 09:28:35 -0800185- name: xnn_f32_gemm_ukernel_4x2c4__sse
186 k-block: 4
Marat Dukhanfda12b82019-11-21 12:27:59 -0800187- name: xnn_f32_gemm_ukernel_1x8__avx_broadcast
188 k-block: 1
189- name: xnn_f32_gemm_ukernel_4x8__avx_broadcast
190 k-block: 1
191- name: xnn_f32_gemm_ukernel_5x8__avx_broadcast
192 k-block: 1
193- name: xnn_f32_gemm_ukernel_6x8__avx_broadcast
194 k-block: 1
195- name: xnn_f32_gemm_ukernel_7x8__avx_broadcast
196 k-block: 1
Marat Dukhaneccfd712019-12-08 16:49:27 -0800197- name: xnn_f32_gemm_ukernel_1x16__avx_broadcast
198 k-block: 1
199- name: xnn_f32_gemm_ukernel_3x16__avx_broadcast
200 k-block: 1
201- name: xnn_f32_gemm_ukernel_4x16__avx_broadcast
202 k-block: 1
203- name: xnn_f32_gemm_ukernel_5x16__avx_broadcast
204 k-block: 1
Marat Dukhanfda12b82019-11-21 12:27:59 -0800205- name: xnn_f32_gemm_ukernel_1x8__fma3_broadcast
206 k-block: 1
207- name: xnn_f32_gemm_ukernel_4x8__fma3_broadcast
208 k-block: 1
209- name: xnn_f32_gemm_ukernel_5x8__fma3_broadcast
210 k-block: 1
211- name: xnn_f32_gemm_ukernel_6x8__fma3_broadcast
212 k-block: 1
213- name: xnn_f32_gemm_ukernel_7x8__fma3_broadcast
214 k-block: 1
215- name: xnn_f32_gemm_ukernel_8x8__fma3_broadcast
216 k-block: 1
Marat Dukhaneccfd712019-12-08 16:49:27 -0800217- name: xnn_f32_gemm_ukernel_1x16__fma3_broadcast
218 k-block: 1
219- name: xnn_f32_gemm_ukernel_3x16__fma3_broadcast
220 k-block: 1
221- name: xnn_f32_gemm_ukernel_4x16__fma3_broadcast
222 k-block: 1
223- name: xnn_f32_gemm_ukernel_5x16__fma3_broadcast
224 k-block: 1
Marat Dukhan27121322019-12-09 14:57:40 -0800225- name: xnn_f32_gemm_ukernel_1x16s4__fma3_broadcast
226 k-block: 4
227- name: xnn_f32_gemm_ukernel_3x16s4__fma3_broadcast
228 k-block: 4
229- name: xnn_f32_gemm_ukernel_4x16s4__fma3_broadcast
230 k-block: 4
231- name: xnn_f32_gemm_ukernel_5x16s4__fma3_broadcast
232 k-block: 4
Marat Dukhan0f349c42019-11-27 11:58:54 -0800233- name: xnn_f32_gemm_ukernel_1x16__avx512f_broadcast
234 k-block: 1
235- name: xnn_f32_gemm_ukernel_4x16__avx512f_broadcast
236 k-block: 1
237- name: xnn_f32_gemm_ukernel_5x16__avx512f_broadcast
238 k-block: 1
239- name: xnn_f32_gemm_ukernel_6x16__avx512f_broadcast
240 k-block: 1
241- name: xnn_f32_gemm_ukernel_7x16__avx512f_broadcast
242 k-block: 1
243- name: xnn_f32_gemm_ukernel_8x16__avx512f_broadcast
244 k-block: 1
XNNPACK Teamb455b122019-09-27 18:10:33 -0700245- name: xnn_f32_gemm_ukernel_1x8__psimd_loadsplat
246 k-block: 1
247- name: xnn_f32_gemm_ukernel_4x8__psimd_loadsplat
248 k-block: 1
249- name: xnn_f32_gemm_ukernel_6x8__psimd_loadsplat
250 k-block: 1
251- name: xnn_f32_gemm_ukernel_1x8__psimd_splat
252 k-block: 4
253- name: xnn_f32_gemm_ukernel_4x8__psimd_splat
254 k-block: 4
255- name: xnn_f32_gemm_ukernel_6x8__psimd_splat
256 k-block: 4
257- name: xnn_f32_gemm_ukernel_1x8s4__psimd
258 k-block: 4
259- name: xnn_f32_gemm_ukernel_4x8s4__psimd
260 k-block: 4
261- name: xnn_f32_gemm_ukernel_6x8s4__psimd
262 k-block: 4
Marat Dukhanb00004d2020-02-13 09:28:35 -0800263- name: xnn_f32_gemm_ukernel_4x2c4__psimd
264 k-block: 4
Marat Dukhan436ebe62019-12-04 15:10:12 -0800265- name: xnn_f32_gemm_ukernel_1x4__wasm
266 k-block: 1
267- name: xnn_f32_gemm_ukernel_2x4__wasm
268 k-block: 1
269- name: xnn_f32_gemm_ukernel_4x4__wasm
270 k-block: 1
271- name: xnn_f32_gemm_ukernel_4x2__wasm
272 k-block: 1
XNNPACK Teamb455b122019-09-27 18:10:33 -0700273- name: xnn_f32_gemm_ukernel_1x4__scalar
274 k-block: 1
275- name: xnn_f32_gemm_ukernel_2x4__scalar
276 k-block: 1
277- name: xnn_f32_gemm_ukernel_4x4__scalar
278 k-block: 1
279- name: xnn_f32_gemm_ukernel_4x2__scalar
280 k-block: 1