blob: a8d5f1fd056e1f0394da6154ac5189a9f9b45a3a [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 Barchard387c2d12019-12-16 19:14:07 -080021- name: xnn_f32_igemm_ukernel_4x8__aarch64_neonfma_cortex_a57
22 k-block: 8
23 pipelined: true
24 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070025- name: xnn_f32_igemm_ukernel_4x8__aarch64_neonfma_cortex_a75
26 k-block: 8
27 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070028 assembly: true
Miao Wang3fa1f012020-02-17 22:45:06 +000029- name: xnn_f32_igemm_ukernel_4x8__aarch32_neon_ld64
30 k-block: 2
31 pipelined: false
32- name: xnn_f32_igemm_ukernel_4x8__aarch32_neon_cortex_a75
33 k-block: 4
34 pipelined: true
35- name: xnn_f32_igemm_ukernel_4x8__aarch32_neon_pld_cortex_a75
36 k-block: 4
37 pipelined: true
Frank Barchard387c2d12019-12-16 19:14:07 -080038- name: xnn_f32_igemm_ukernel_5x8__aarch64_neonfma_cortex_a57
39 k-block: 8
40 pipelined: true
41 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070042- name: xnn_f32_igemm_ukernel_5x8__aarch64_neonfma_cortex_a75
43 k-block: 8
44 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070045 assembly: true
Frank Barcharda7fb8552019-10-23 17:14:17 -070046- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_cortex_a53
Frank Barchard80b537a2019-11-18 10:51:33 -080047 k-block: 4
48 pipelined: true
Frank Barcharda7fb8552019-10-23 17:14:17 -070049 assembly: true
Frank Barcharda7fb8552019-10-23 17:14:17 -070050- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_cortex_a73
XNNPACK Teamb455b122019-09-27 18:10:33 -070051 k-block: 8
52 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070053 assembly: true
Frank Barchard387c2d12019-12-16 19:14:07 -080054- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_cortex_a57
55 k-block: 8
56 pipelined: true
57 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070058- name: xnn_f32_igemm_ukernel_6x8__aarch64_neonfma_cortex_a75
59 k-block: 8
60 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070061 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070062- name: xnn_f32_igemm_ukernel_1x12__aarch64_neonfma_cortex_a53
63 k-block: 4
64 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070065 assembly: true
XNNPACK Teamb455b122019-09-27 18:10:33 -070066- name: xnn_f32_igemm_ukernel_4x12__aarch64_neonfma_cortex_a53
67 k-block: 4
68 pipelined: true
Frank Barchard7e955972019-10-11 10:34:25 -070069 assembly: true
Frank Barchard91317c52019-11-22 10:54:35 -080070- name: xnn_f32_igemm_ukernel_1x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070071 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080072- name: xnn_f32_igemm_ukernel_4x2__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070073 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080074- name: xnn_f32_igemm_ukernel_4x4__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070075 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080076- name: xnn_f32_igemm_ukernel_4x8__neon_lane_ld128
XNNPACK Teamb455b122019-09-27 18:10:33 -070077 k-block: 4
Frank Barchard91317c52019-11-22 10:54:35 -080078- name: xnn_f32_igemm_ukernel_4x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070079 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080080- name: xnn_f32_igemm_ukernel_6x8__neon_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070081 k-block: 2
Frank Barchard69172d92019-11-26 16:22:39 -080082- name: xnn_f32_igemm_ukernel_6x8__neon_lane_ld128
83 k-block: 4
Frank Barchard5243bb02019-11-22 16:37:50 -080084- name: xnn_f32_igemm_ukernel_1x8__neonfma_lane_ld64
85 k-block: 2
86 arch:
87 - aarch64
Frank Barchard91317c52019-11-22 10:54:35 -080088- name: xnn_f32_igemm_ukernel_4x2__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070089 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080090 arch:
91 - aarch64
92- name: xnn_f32_igemm_ukernel_4x4__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -070093 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -080094 arch:
95 - aarch64
96- name: xnn_f32_igemm_ukernel_4x8__neonfma_lane_ld128
XNNPACK Teamb455b122019-09-27 18:10:33 -070097 k-block: 4
Frank Barchard91317c52019-11-22 10:54:35 -080098 arch:
99 - aarch64
100- name: xnn_f32_igemm_ukernel_4x8__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700101 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800102 arch:
103 - aarch64
104- name: xnn_f32_igemm_ukernel_6x8__neonfma_lane_ld64
XNNPACK Teamb455b122019-09-27 18:10:33 -0700105 k-block: 2
Frank Barchard91317c52019-11-22 10:54:35 -0800106 arch:
107 - aarch64
Frank Barchard69172d92019-11-26 16:22:39 -0800108- name: xnn_f32_igemm_ukernel_6x8__neonfma_lane_ld128
109 k-block: 4
110 arch:
111 - aarch64
Frank Barchard5243bb02019-11-22 16:37:50 -0800112- name: xnn_f32_igemm_ukernel_1x8__neon_dup_ld64
113 k-block: 2
114- name: xnn_f32_igemm_ukernel_4x8__neon_dup_ld128
115 k-block: 4
116- name: xnn_f32_igemm_ukernel_4x8__neon_dup_ld64
117 k-block: 2
118- name: xnn_f32_igemm_ukernel_6x8__neon_dup_ld64
119 k-block: 2
Frank Barchard69172d92019-11-26 16:22:39 -0800120- name: xnn_f32_igemm_ukernel_6x8__neon_dup_ld128
121 k-block: 4
Frank Barchard5243bb02019-11-22 16:37:50 -0800122- name: xnn_f32_igemm_ukernel_1x8__neonfma_dup_ld64
123 k-block: 2
124- name: xnn_f32_igemm_ukernel_4x8__neonfma_dup_ld128
125 k-block: 4
126- name: xnn_f32_igemm_ukernel_4x8__neonfma_dup_ld64
127 k-block: 2
128- name: xnn_f32_igemm_ukernel_6x8__neonfma_dup_ld64
129 k-block: 2
Frank Barchard69172d92019-11-26 16:22:39 -0800130- name: xnn_f32_igemm_ukernel_6x8__neonfma_dup_ld128
131 k-block: 4
Frank Barchard5243bb02019-11-22 16:37:50 -0800132- name: xnn_f32_igemm_ukernel_1x8s4__neon
133 k-block: 4
134- name: xnn_f32_igemm_ukernel_4x8s4__neon
135 k-block: 4
136- name: xnn_f32_igemm_ukernel_6x8s4__neon
137 k-block: 4
138- name: xnn_f32_igemm_ukernel_8x8s4__neon
139 k-block: 4
Frank Barcharddf06d802019-11-20 15:53:46 -0800140- name: xnn_f32_igemm_ukernel_1x8s4__neonfma
141 k-block: 4
142- name: xnn_f32_igemm_ukernel_4x8s4__neonfma
143 k-block: 4
144- name: xnn_f32_igemm_ukernel_6x8s4__neonfma
145 k-block: 4
146- name: xnn_f32_igemm_ukernel_8x8s4__neonfma
147 k-block: 4
XNNPACK Teamb455b122019-09-27 18:10:33 -0700148- name: xnn_f32_igemm_ukernel_1x8__sse_load1
149 k-block: 1
150- name: xnn_f32_igemm_ukernel_4x8__sse_load1
151 k-block: 1
152- name: xnn_f32_igemm_ukernel_1x8__sse_dup
153 k-block: 4
154- name: xnn_f32_igemm_ukernel_4x8__sse_dup
155 k-block: 4
Frank Barchardd42bdf72019-11-20 16:39:43 -0800156- name: xnn_f32_igemm_ukernel_1x8s4__sse
157 k-block: 4
158- name: xnn_f32_igemm_ukernel_4x8s4__sse
159 k-block: 4
XNNPACK Teamb455b122019-09-27 18:10:33 -0700160- name: xnn_f32_igemm_ukernel_4x2c4__sse
161 k-block: 4
162- name: xnn_f32_igemm_ukernel_4x2c4__psimd
163 k-block: 4
Marat Dukhanfda12b82019-11-21 12:27:59 -0800164- name: xnn_f32_igemm_ukernel_1x8__avx_broadcast
165 k-block: 1
166- name: xnn_f32_igemm_ukernel_4x8__avx_broadcast
167 k-block: 1
168- name: xnn_f32_igemm_ukernel_5x8__avx_broadcast
169 k-block: 1
170- name: xnn_f32_igemm_ukernel_6x8__avx_broadcast
171 k-block: 1
172- name: xnn_f32_igemm_ukernel_7x8__avx_broadcast
173 k-block: 1
Marat Dukhaneccfd712019-12-08 16:49:27 -0800174- name: xnn_f32_igemm_ukernel_1x16__avx_broadcast
175 k-block: 1
176- name: xnn_f32_igemm_ukernel_3x16__avx_broadcast
177 k-block: 1
178- name: xnn_f32_igemm_ukernel_4x16__avx_broadcast
179 k-block: 1
180- name: xnn_f32_igemm_ukernel_5x16__avx_broadcast
181 k-block: 1
Marat Dukhanfda12b82019-11-21 12:27:59 -0800182- name: xnn_f32_igemm_ukernel_1x8__fma3_broadcast
183 k-block: 1
184- name: xnn_f32_igemm_ukernel_4x8__fma3_broadcast
185 k-block: 1
186- name: xnn_f32_igemm_ukernel_5x8__fma3_broadcast
187 k-block: 1
188- name: xnn_f32_igemm_ukernel_6x8__fma3_broadcast
189 k-block: 1
190- name: xnn_f32_igemm_ukernel_7x8__fma3_broadcast
191 k-block: 1
192- name: xnn_f32_igemm_ukernel_8x8__fma3_broadcast
193 k-block: 1
Marat Dukhaneccfd712019-12-08 16:49:27 -0800194- name: xnn_f32_igemm_ukernel_1x16__fma3_broadcast
195 k-block: 1
196- name: xnn_f32_igemm_ukernel_3x16__fma3_broadcast
197 k-block: 1
198- name: xnn_f32_igemm_ukernel_4x16__fma3_broadcast
199 k-block: 1
200- name: xnn_f32_igemm_ukernel_5x16__fma3_broadcast
201 k-block: 1
Marat Dukhan27121322019-12-09 14:57:40 -0800202- name: xnn_f32_igemm_ukernel_1x16s4__fma3_broadcast
203 k-block: 4
204- name: xnn_f32_igemm_ukernel_3x16s4__fma3_broadcast
205 k-block: 4
206- name: xnn_f32_igemm_ukernel_4x16s4__fma3_broadcast
207 k-block: 4
208- name: xnn_f32_igemm_ukernel_5x16s4__fma3_broadcast
209 k-block: 4
Marat Dukhan0f349c42019-11-27 11:58:54 -0800210- name: xnn_f32_igemm_ukernel_1x16__avx512f_broadcast
211 k-block: 1
212- name: xnn_f32_igemm_ukernel_4x16__avx512f_broadcast
213 k-block: 1
214- name: xnn_f32_igemm_ukernel_5x16__avx512f_broadcast
215 k-block: 1
216- name: xnn_f32_igemm_ukernel_6x16__avx512f_broadcast
217 k-block: 1
218- name: xnn_f32_igemm_ukernel_7x16__avx512f_broadcast
219 k-block: 1
220- name: xnn_f32_igemm_ukernel_8x16__avx512f_broadcast
221 k-block: 1
XNNPACK Teamb455b122019-09-27 18:10:33 -0700222- name: xnn_f32_igemm_ukernel_1x8__psimd_loadsplat
223 k-block: 1
224- name: xnn_f32_igemm_ukernel_4x8__psimd_loadsplat
225 k-block: 1
226- name: xnn_f32_igemm_ukernel_6x8__psimd_loadsplat
227 k-block: 1
228- name: xnn_f32_igemm_ukernel_1x8__psimd_splat
229 k-block: 4
230- name: xnn_f32_igemm_ukernel_4x8__psimd_splat
231 k-block: 4
232- name: xnn_f32_igemm_ukernel_6x8__psimd_splat
233 k-block: 4
234- name: xnn_f32_igemm_ukernel_1x8s4__psimd
235 k-block: 4
236- name: xnn_f32_igemm_ukernel_4x8s4__psimd
237 k-block: 4
238- name: xnn_f32_igemm_ukernel_6x8s4__psimd
239 k-block: 4
Marat Dukhan436ebe62019-12-04 15:10:12 -0800240- name: xnn_f32_igemm_ukernel_1x4__wasm
241 k-block: 1
242- name: xnn_f32_igemm_ukernel_2x4__wasm
243 k-block: 1
244- name: xnn_f32_igemm_ukernel_4x4__wasm
245 k-block: 1
246- name: xnn_f32_igemm_ukernel_4x2__wasm
247 k-block: 1
XNNPACK Teamb455b122019-09-27 18:10:33 -0700248- name: xnn_f32_igemm_ukernel_1x4__scalar
249 k-block: 1
250- name: xnn_f32_igemm_ukernel_2x4__scalar
251 k-block: 1
252- name: xnn_f32_igemm_ukernel_4x4__scalar
253 k-block: 1
254- name: xnn_f32_igemm_ukernel_4x2__scalar
255 k-block: 1