1# 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. 5- name: xnn_f32_igemm_minmax_ukernel_1x8__aarch64_neonfma_cortex_a53 6 k-block: 8 7 pipelined: true 8 assembly: true 9- name: xnn_f32_igemm_minmax_ukernel_1x8__aarch64_neonfma_cortex_a57 10 k-block: 8 11 pipelined: true 12 assembly: true 13- name: xnn_f32_igemm_minmax_ukernel_1x8__aarch64_neonfma_cortex_a75 14 k-block: 8 15 pipelined: true 16 assembly: true 17- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch64_neonfma_cortex_a53 18 k-block: 4 19 pipelined: true 20 assembly: true 21- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch64_neonfma_cortex_a55 22 k-block: 4 23 pipelined: true 24 assembly: true 25- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch64_neonfma_cortex_a57 26 k-block: 8 27 pipelined: true 28 assembly: true 29- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch64_neonfma_cortex_a75 30 k-block: 8 31 pipelined: true 32 assembly: true 33- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch32_neon_ld64 34 k-block: 2 35 pipelined: false 36 assembly: true 37- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch32_neon_cortex_a7 38 k-block: 2 39 pipelined: false 40 assembly: true 41- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch32_neon_cortex_a75 42 k-block: 4 43 pipelined: true 44 assembly: true 45- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch32_neon_pld_cortex_a75 46 k-block: 4 47 pipelined: true 48 assembly: true 49- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch32_neon_cortex_a53 50 k-block: 4 51 pipelined: true 52 assembly: true 53- name: xnn_f32_igemm_minmax_ukernel_4x8__aarch32_neon_cortex_a55 54 k-block: 4 55 pipelined: true 56 assembly: true 57- name: xnn_f32_igemm_minmax_ukernel_5x8__aarch64_neonfma_cortex_a57 58 k-block: 8 59 pipelined: true 60 assembly: true 61- name: xnn_f32_igemm_minmax_ukernel_5x8__aarch64_neonfma_cortex_a75 62 k-block: 8 63 pipelined: true 64 assembly: true 65- name: xnn_f32_igemm_minmax_ukernel_6x8__aarch64_neonfma_cortex_a53 66 k-block: 4 67 pipelined: true 68 assembly: true 69- name: xnn_f32_igemm_minmax_ukernel_6x8__aarch64_neonfma_cortex_a55 70 k-block: 4 71 pipelined: true 72 assembly: true 73- name: xnn_f32_igemm_minmax_ukernel_6x8__aarch64_neonfma_cortex_a73 74 k-block: 8 75 pipelined: true 76 assembly: true 77- name: xnn_f32_igemm_minmax_ukernel_6x8__aarch64_neonfma_cortex_a57 78 k-block: 8 79 pipelined: true 80 assembly: true 81- name: xnn_f32_igemm_minmax_ukernel_6x8__aarch64_neonfma_cortex_a75 82 k-block: 8 83 pipelined: true 84 assembly: true 85- name: xnn_f32_igemm_minmax_ukernel_1x12__aarch64_neonfma_cortex_a53 86 k-block: 4 87 pipelined: true 88 assembly: true 89- name: xnn_f32_igemm_minmax_ukernel_4x12__aarch64_neonfma_cortex_a53 90 k-block: 4 91 pipelined: true 92 assembly: true 93- name: xnn_f32_igemm_minmax_ukernel_1x8__neon_lane_ld64 94 k-block: 2 95- name: xnn_f32_igemm_minmax_ukernel_4x2__neon_lane_ld64 96 k-block: 2 97- name: xnn_f32_igemm_minmax_ukernel_4x4__neon_lane_ld64 98 k-block: 2 99- name: xnn_f32_igemm_minmax_ukernel_4x8__neon_lane_ld128 100 k-block: 4 101- name: xnn_f32_igemm_minmax_ukernel_4x8__neon_lane_ld64 102 k-block: 2 103- name: xnn_f32_igemm_minmax_ukernel_6x8__neon_lane_ld64 104 k-block: 2 105- name: xnn_f32_igemm_minmax_ukernel_6x8__neon_lane_ld128 106 k-block: 4 107- name: xnn_f32_igemm_minmax_ukernel_1x8__neonfma_lane_ld64 108 k-block: 2 109 arch: 110 - aarch64 111- name: xnn_f32_igemm_minmax_ukernel_4x2__neonfma_lane_ld64 112 k-block: 2 113 arch: 114 - aarch64 115- name: xnn_f32_igemm_minmax_ukernel_4x4__neonfma_lane_ld64 116 k-block: 2 117 arch: 118 - aarch64 119- name: xnn_f32_igemm_minmax_ukernel_4x8__neonfma_lane_ld128 120 k-block: 4 121 arch: 122 - aarch64 123- name: xnn_f32_igemm_minmax_ukernel_4x8__neonfma_lane_ld64 124 k-block: 2 125 arch: 126 - aarch64 127- name: xnn_f32_igemm_minmax_ukernel_6x8__neonfma_lane_ld64 128 k-block: 2 129 arch: 130 - aarch64 131- name: xnn_f32_igemm_minmax_ukernel_6x8__neonfma_lane_ld128 132 k-block: 4 133 arch: 134 - aarch64 135- name: xnn_f32_igemm_minmax_ukernel_1x8__neon_dup_ld64 136 k-block: 2 137- name: xnn_f32_igemm_minmax_ukernel_4x8__neon_dup_ld128 138 k-block: 4 139- name: xnn_f32_igemm_minmax_ukernel_4x8__neon_dup_ld64 140 k-block: 2 141- name: xnn_f32_igemm_minmax_ukernel_6x8__neon_dup_ld64 142 k-block: 2 143- name: xnn_f32_igemm_minmax_ukernel_6x8__neon_dup_ld128 144 k-block: 4 145- name: xnn_f32_igemm_minmax_ukernel_1x8__neonfma_dup_ld64 146 k-block: 2 147- name: xnn_f32_igemm_minmax_ukernel_4x8__neonfma_dup_ld128 148 k-block: 4 149- name: xnn_f32_igemm_minmax_ukernel_4x8__neonfma_dup_ld64 150 k-block: 2 151- name: xnn_f32_igemm_minmax_ukernel_6x8__neonfma_dup_ld64 152 k-block: 2 153- name: xnn_f32_igemm_minmax_ukernel_6x8__neonfma_dup_ld128 154 k-block: 4 155- name: xnn_f32_igemm_minmax_ukernel_1x8s4__neon 156 k-block: 4 157- name: xnn_f32_igemm_minmax_ukernel_4x8s4__neon 158 k-block: 4 159- name: xnn_f32_igemm_minmax_ukernel_6x8s4__neon 160 k-block: 4 161- name: xnn_f32_igemm_minmax_ukernel_8x8s4__neon 162 k-block: 4 163- name: xnn_f32_igemm_minmax_ukernel_1x8s4__neonfma 164 k-block: 4 165- name: xnn_f32_igemm_minmax_ukernel_4x8s4__neonfma 166 k-block: 4 167- name: xnn_f32_igemm_minmax_ukernel_6x8s4__neonfma 168 k-block: 4 169- name: xnn_f32_igemm_minmax_ukernel_8x8s4__neonfma 170 k-block: 4 171- name: xnn_f32_igemm_minmax_ukernel_1x8__sse_load1 172 k-block: 1 173- name: xnn_f32_igemm_minmax_ukernel_3x8__sse_load1 174 k-block: 1 175- name: xnn_f32_igemm_minmax_ukernel_4x8__sse_load1 176 k-block: 1 177- name: xnn_f32_igemm_minmax_ukernel_5x8__sse_load1 178 k-block: 1 179- name: xnn_f32_igemm_minmax_ukernel_1x8__sse_dup 180 k-block: 4 181- name: xnn_f32_igemm_minmax_ukernel_3x8__sse_dup 182 k-block: 4 183- name: xnn_f32_igemm_minmax_ukernel_4x8__sse_dup 184 k-block: 4 185- name: xnn_f32_igemm_minmax_ukernel_5x8__sse_dup 186 k-block: 4 187- name: xnn_f32_igemm_minmax_ukernel_1x8s4__sse 188 k-block: 4 189- name: xnn_f32_igemm_minmax_ukernel_3x8s4__sse 190 k-block: 4 191- name: xnn_f32_igemm_minmax_ukernel_4x8s4__sse 192 k-block: 4 193- name: xnn_f32_igemm_minmax_ukernel_5x8s4__sse 194 k-block: 4 195- name: xnn_f32_igemm_minmax_ukernel_4x2c4__sse 196 k-block: 4 197- name: xnn_f32_igemm_minmax_ukernel_1x8__sse2_dup 198 k-block: 4 199- name: xnn_f32_igemm_minmax_ukernel_3x8__sse2_dup 200 k-block: 4 201- name: xnn_f32_igemm_minmax_ukernel_4x8__sse2_dup 202 k-block: 4 203- name: xnn_f32_igemm_minmax_ukernel_5x8__sse2_dup 204 k-block: 4 205- name: xnn_f32_igemm_minmax_ukernel_1x8__avx_broadcast 206 k-block: 1 207- name: xnn_f32_igemm_minmax_ukernel_4x8__avx_broadcast 208 k-block: 1 209- name: xnn_f32_igemm_minmax_ukernel_5x8__avx_broadcast 210 k-block: 1 211- name: xnn_f32_igemm_minmax_ukernel_6x8__avx_broadcast 212 k-block: 1 213- name: xnn_f32_igemm_minmax_ukernel_7x8__avx_broadcast 214 k-block: 1 215- name: xnn_f32_igemm_minmax_ukernel_1x16__avx_broadcast 216 k-block: 1 217- name: xnn_f32_igemm_minmax_ukernel_3x16__avx_broadcast 218 k-block: 1 219- name: xnn_f32_igemm_minmax_ukernel_4x16__avx_broadcast 220 k-block: 1 221- name: xnn_f32_igemm_minmax_ukernel_5x16__avx_broadcast 222 k-block: 1 223- name: xnn_f32_igemm_minmax_ukernel_1x8__fma3_broadcast 224 k-block: 1 225- name: xnn_f32_igemm_minmax_ukernel_4x8__fma3_broadcast 226 k-block: 1 227- name: xnn_f32_igemm_minmax_ukernel_5x8__fma3_broadcast 228 k-block: 1 229- name: xnn_f32_igemm_minmax_ukernel_6x8__fma3_broadcast 230 k-block: 1 231- name: xnn_f32_igemm_minmax_ukernel_7x8__fma3_broadcast 232 k-block: 1 233- name: xnn_f32_igemm_minmax_ukernel_8x8__fma3_broadcast 234 k-block: 1 235- name: xnn_f32_igemm_minmax_ukernel_1x16__fma3_broadcast 236 k-block: 1 237- name: xnn_f32_igemm_minmax_ukernel_3x16__fma3_broadcast 238 k-block: 1 239- name: xnn_f32_igemm_minmax_ukernel_4x16__fma3_broadcast 240 k-block: 1 241- name: xnn_f32_igemm_minmax_ukernel_5x16__fma3_broadcast 242 k-block: 1 243- name: xnn_f32_igemm_minmax_ukernel_1x16s4__fma3_broadcast 244 k-block: 4 245- name: xnn_f32_igemm_minmax_ukernel_3x16s4__fma3_broadcast 246 k-block: 4 247- name: xnn_f32_igemm_minmax_ukernel_4x16s4__fma3_broadcast 248 k-block: 4 249- name: xnn_f32_igemm_minmax_ukernel_5x16s4__fma3_broadcast 250 k-block: 4 251- name: xnn_f32_igemm_minmax_ukernel_1x16__avx512f_broadcast 252 k-block: 1 253- name: xnn_f32_igemm_minmax_ukernel_4x16__avx512f_broadcast 254 k-block: 1 255- name: xnn_f32_igemm_minmax_ukernel_5x16__avx512f_broadcast 256 k-block: 1 257- name: xnn_f32_igemm_minmax_ukernel_6x16__avx512f_broadcast 258 k-block: 1 259- name: xnn_f32_igemm_minmax_ukernel_7x16__avx512f_broadcast 260 k-block: 1 261- name: xnn_f32_igemm_minmax_ukernel_8x16__avx512f_broadcast 262 k-block: 1 263- name: xnn_f32_igemm_minmax_ukernel_1x8__wasmsimd_arm_loadsplat 264 k-block: 1 265- name: xnn_f32_igemm_minmax_ukernel_3x8__wasmsimd_arm_loadsplat 266 k-block: 1 267- name: xnn_f32_igemm_minmax_ukernel_4x8__wasmsimd_arm_loadsplat 268 k-block: 1 269- name: xnn_f32_igemm_minmax_ukernel_5x8__wasmsimd_arm_loadsplat 270 k-block: 1 271- name: xnn_f32_igemm_minmax_ukernel_6x8__wasmsimd_arm_loadsplat 272 k-block: 1 273- name: xnn_f32_igemm_minmax_ukernel_1x8__wasmsimd_x86_loadsplat 274 k-block: 1 275- name: xnn_f32_igemm_minmax_ukernel_3x8__wasmsimd_x86_loadsplat 276 k-block: 1 277- name: xnn_f32_igemm_minmax_ukernel_4x8__wasmsimd_x86_loadsplat 278 k-block: 1 279- name: xnn_f32_igemm_minmax_ukernel_5x8__wasmsimd_x86_loadsplat 280 k-block: 1 281- name: xnn_f32_igemm_minmax_ukernel_6x8__wasmsimd_x86_loadsplat 282 k-block: 1 283- name: xnn_f32_igemm_minmax_ukernel_1x8__wasmsimd_arm_splat 284 k-block: 4 285- name: xnn_f32_igemm_minmax_ukernel_3x8__wasmsimd_arm_splat 286 k-block: 4 287- name: xnn_f32_igemm_minmax_ukernel_4x8__wasmsimd_arm_splat 288 k-block: 4 289- name: xnn_f32_igemm_minmax_ukernel_5x8__wasmsimd_arm_splat 290 k-block: 4 291- name: xnn_f32_igemm_minmax_ukernel_6x8__wasmsimd_arm_splat 292 k-block: 4 293- name: xnn_f32_igemm_minmax_ukernel_1x8__wasmsimd_x86_splat 294 k-block: 4 295- name: xnn_f32_igemm_minmax_ukernel_3x8__wasmsimd_x86_splat 296 k-block: 4 297- name: xnn_f32_igemm_minmax_ukernel_4x8__wasmsimd_x86_splat 298 k-block: 4 299- name: xnn_f32_igemm_minmax_ukernel_5x8__wasmsimd_x86_splat 300 k-block: 4 301- name: xnn_f32_igemm_minmax_ukernel_6x8__wasmsimd_x86_splat 302 k-block: 4 303- name: xnn_f32_igemm_minmax_ukernel_1x8s4__wasmsimd_arm 304 k-block: 4 305- name: xnn_f32_igemm_minmax_ukernel_3x8s4__wasmsimd_arm 306 k-block: 4 307- name: xnn_f32_igemm_minmax_ukernel_4x8s4__wasmsimd_arm 308 k-block: 4 309- name: xnn_f32_igemm_minmax_ukernel_5x8s4__wasmsimd_arm 310 k-block: 4 311- name: xnn_f32_igemm_minmax_ukernel_6x8s4__wasmsimd_arm 312 k-block: 4 313- name: xnn_f32_igemm_minmax_ukernel_1x8s4__wasmsimd_x86 314 k-block: 4 315- name: xnn_f32_igemm_minmax_ukernel_3x8s4__wasmsimd_x86 316 k-block: 4 317- name: xnn_f32_igemm_minmax_ukernel_4x8s4__wasmsimd_x86 318 k-block: 4 319- name: xnn_f32_igemm_minmax_ukernel_5x8s4__wasmsimd_x86 320 k-block: 4 321- name: xnn_f32_igemm_minmax_ukernel_6x8s4__wasmsimd_x86 322 k-block: 4 323- name: xnn_f32_igemm_minmax_ukernel_4x2c4__wasmsimd_arm 324 k-block: 4 325- name: xnn_f32_igemm_minmax_ukernel_4x2c4__wasmsimd_x86 326 k-block: 4 327- name: xnn_f32_igemm_minmax_ukernel_1x4__wasm 328 k-block: 1 329- name: xnn_f32_igemm_minmax_ukernel_2x4__wasm 330 k-block: 1 331- name: xnn_f32_igemm_minmax_ukernel_4x4__wasm 332 k-block: 1 333- name: xnn_f32_igemm_minmax_ukernel_4x2__wasm 334 k-block: 1 335- name: xnn_f32_igemm_minmax_ukernel_1x4__scalar 336 k-block: 1 337- name: xnn_f32_igemm_minmax_ukernel_2x4__scalar 338 k-block: 1 339- name: xnn_f32_igemm_minmax_ukernel_4x4__scalar 340 k-block: 1 341- name: xnn_f32_igemm_minmax_ukernel_4x2__scalar 342 k-block: 1 343