1# 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 6# AArch32 assembly 7- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8__aarch32_neon_mlal_lane_cortex_a7 8 init: xnn_init_qc8_conv_minmax_fp32_neon_params 9 k-block: 8 10 assembly: true 11- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8__aarch32_neon_mlal_lane_prfm_cortex_a7 12 init: xnn_init_qc8_conv_minmax_fp32_neon_params 13 k-block: 8 14 assembly: true 15- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8__aarch32_neonv8_mlal_lane_cortex_a35 16 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 17 k-block: 8 18 assembly: true 19- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8__aarch32_neonv8_mlal_lane_prfm_cortex_a35 20 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 21 k-block: 8 22 assembly: true 23- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a7 24 init: xnn_init_qc8_conv_minmax_fp32_neon_params 25 k-block: 8 26 assembly: true 27- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a53 28 init: xnn_init_qc8_conv_minmax_fp32_neon_params 29 k-block: 8 30 assembly: true 31- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_ld64 32 init: xnn_init_qc8_conv_minmax_fp32_neon_params 33 k-block: 8 34 assembly: true 35- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a7 36 init: xnn_init_qc8_conv_minmax_fp32_neon_params 37 k-block: 8 38 assembly: true 39- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a53 40 init: xnn_init_qc8_conv_minmax_fp32_neon_params 41 k-block: 8 42 assembly: true 43- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_prfm_ld64 44 init: xnn_init_qc8_conv_minmax_fp32_neon_params 45 k-block: 8 46 assembly: true 47- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_cortex_a35 48 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 49 k-block: 8 50 assembly: true 51- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_cortex_a53 52 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 53 k-block: 8 54 assembly: true 55- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_ld64 56 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 57 k-block: 8 58 assembly: true 59- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_cortex_a35 60 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 61 k-block: 8 62 assembly: true 63- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_cortex_a53 64 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 65 k-block: 8 66 assembly: true 67- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_ld64 68 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 69 k-block: 8 70 assembly: true 71- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8c4__aarch32_neondot_cortex_a55 72 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 73 k-block: 8 74 assembly: true 75- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8c4__aarch32_neondot_ld64 76 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 77 k-block: 8 78 assembly: true 79# AArch64 assembly 80- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal 81 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 82 k-block: 16 83 assembly: true 84- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_cortex_a53 85 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 86 k-block: 16 87 assembly: true 88- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_prfm 89 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 90 k-block: 16 91 assembly: true 92- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_prfm_cortex_a53 93 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 94 k-block: 16 95 assembly: true 96- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x16c4__aarch64_neondot_ld32 97 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 98 k-block: 4 99 assembly: true 100- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x16c4__aarch64_neondot_ld64 101 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 102 k-block: 8 103 assembly: true 104- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal 105 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 106 k-block: 16 107 assembly: true 108- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_cortex_a53 109 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 110 k-block: 16 111 assembly: true 112- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_prfm 113 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 114 k-block: 16 115 assembly: true 116- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_prfm_cortex_a53 117 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 118 k-block: 16 119 assembly: true 120- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mull 121 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 122 k-block: 8 123 assembly: true 124- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c16__aarch64_neon_mlal 125 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 126 k-block: 16 127 assembly: true 128- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_cortex_a53 129 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 130 k-block: 8 131 assembly: true 132- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_ld64 133 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 134 k-block: 8 135 assembly: true 136- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_prfm_cortex_a53 137 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 138 k-block: 8 139 assembly: true 140- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_prfm_ld64 141 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 142 k-block: 8 143 assembly: true 144- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_cortex_a55 145 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 146 k-block: 16 147 assembly: true 148- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld32 149 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 150 k-block: 4 151 assembly: true 152- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld64 153 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 154 k-block: 8 155 assembly: true 156- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld128 157 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 158 k-block: 16 159 assembly: true 160 161# ARMv6 SIMD 162- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x1c4__armsimd32 163 init: xnn_init_qc8_conv_minmax_fp32_armsimd32_params 164 k-block: 4 165- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x2c4__armsimd32 166 init: xnn_init_qc8_conv_minmax_fp32_armsimd32_params 167 k-block: 4 168- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x1c4__armsimd32 169 init: xnn_init_qc8_conv_minmax_fp32_armsimd32_params 170 k-block: 4 171- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x2c4__armsimd32 172 init: xnn_init_qc8_conv_minmax_fp32_armsimd32_params 173 k-block: 4 174 175# ARM NEON 176- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8__neon_mlal_lane 177 init: xnn_init_qc8_conv_minmax_fp32_neon_params 178 k-block: 8 179- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8__neon_mlal_lane_prfm 180 init: xnn_init_qc8_conv_minmax_fp32_neon_params 181 k-block: 8 182- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8__neonv8_mlal_lane 183 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 184 k-block: 8 185- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8__neonv8_mlal_lane_prfm 186 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 187 k-block: 8 188- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_dup 189 init: xnn_init_qc8_conv_minmax_fp32_neon_params 190 k-block: 16 191- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld1r 192 init: xnn_init_qc8_conv_minmax_fp32_neon_params 193 k-block: 16 194- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld2r 195 init: xnn_init_qc8_conv_minmax_fp32_neon_params 196 k-block: 16 197- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld4r 198 init: xnn_init_qc8_conv_minmax_fp32_neon_params 199 k-block: 16 200- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_dup 201 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 202 k-block: 16 203- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld1r 204 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 205 k-block: 16 206- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld2r 207 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 208 k-block: 16 209- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld4r 210 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 211 k-block: 16 212- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2s4__neon_mlal 213 init: xnn_init_qc8_conv_minmax_fp32_neon_params 214 k-block: 16 215- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2s4__neonv8_mlal 216 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 217 k-block: 16 218- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neon_mlal_dup 219 init: xnn_init_qc8_conv_minmax_fp32_neon_params 220 k-block: 16 221- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neon_mlal_ld1r 222 init: xnn_init_qc8_conv_minmax_fp32_neon_params 223 k-block: 16 224- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neon_mlal_ld2r 225 init: xnn_init_qc8_conv_minmax_fp32_neon_params 226 k-block: 16 227- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neondot 228 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 229 k-block: 8 230- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_dup 231 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 232 k-block: 16 233- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_ld1r 234 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 235 k-block: 16 236- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_ld2r 237 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 238 k-block: 16 239- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4s2__neon_mlal 240 init: xnn_init_qc8_conv_minmax_fp32_neon_params 241 k-block: 16 242- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4s2__neonv8_mlal 243 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 244 k-block: 16 245- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__neon_mlal 246 init: xnn_init_qc8_conv_minmax_fp32_neon_params 247 k-block: 16 248- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__neonv8_mlal 249 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 250 k-block: 16 251- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x16__neon_mlal_lane 252 init: xnn_init_qc8_conv_minmax_fp32_neon_params 253 k-block: 8 254- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x16__neon_mlal_lane_prfm 255 init: xnn_init_qc8_conv_minmax_fp32_neon_params 256 k-block: 8 257- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x16__neonv8_mlal_lane 258 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 259 k-block: 8 260- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x16__neonv8_mlal_lane_prfm 261 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 262 k-block: 8 263- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x16c4__neondot 264 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 265 k-block: 8 266- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8__neon_mlal_lane 267 init: xnn_init_qc8_conv_minmax_fp32_neon_params 268 k-block: 8 269- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8__neon_mlal_lane_prfm 270 init: xnn_init_qc8_conv_minmax_fp32_neon_params 271 k-block: 8 272- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8__neonv8_mlal_lane 273 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 274 k-block: 8 275- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8__neonv8_mlal_lane_prfm 276 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 277 k-block: 8 278- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_dup 279 init: xnn_init_qc8_conv_minmax_fp32_neon_params 280 k-block: 16 281- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld1r 282 init: xnn_init_qc8_conv_minmax_fp32_neon_params 283 k-block: 16 284- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld2r 285 init: xnn_init_qc8_conv_minmax_fp32_neon_params 286 k-block: 16 287- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld4r 288 init: xnn_init_qc8_conv_minmax_fp32_neon_params 289 k-block: 16 290- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_dup 291 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 292 k-block: 16 293- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld1r 294 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 295 k-block: 16 296- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld2r 297 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 298 k-block: 16 299- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld4r 300 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 301 k-block: 16 302- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2s4__neon_mlal 303 init: xnn_init_qc8_conv_minmax_fp32_neon_params 304 k-block: 16 305- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2s4__neonv8_mlal 306 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 307 k-block: 16 308- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neon_mlal_dup 309 init: xnn_init_qc8_conv_minmax_fp32_neon_params 310 k-block: 16 311- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neon_mlal_ld1r 312 init: xnn_init_qc8_conv_minmax_fp32_neon_params 313 k-block: 16 314- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neon_mlal_ld2r 315 init: xnn_init_qc8_conv_minmax_fp32_neon_params 316 k-block: 16 317- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_dup 318 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 319 k-block: 16 320- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_ld1r 321 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 322 k-block: 16 323- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_ld2r 324 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 325 k-block: 16 326- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4s2__neon_mlal 327 init: xnn_init_qc8_conv_minmax_fp32_neon_params 328 k-block: 16 329- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4s2__neonv8_mlal 330 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 331 k-block: 16 332- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__neon_mlal 333 init: xnn_init_qc8_conv_minmax_fp32_neon_params 334 k-block: 16 335- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__neonv8_mlal 336 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 337 k-block: 16 338- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x16__neon_mlal_lane 339 init: xnn_init_qc8_conv_minmax_fp32_neon_params 340 k-block: 8 341- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x16__neon_mlal_lane_prfm 342 init: xnn_init_qc8_conv_minmax_fp32_neon_params 343 k-block: 8 344- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x16__neonv8_mlal_lane 345 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 346 k-block: 8 347- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x16__neonv8_mlal_lane_prfm 348 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 349 k-block: 8 350- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x8__neon_mlal_lane 351 init: xnn_init_qc8_conv_minmax_fp32_neon_params 352 k-block: 8 353- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x8__neon_mlal_lane_prfm 354 init: xnn_init_qc8_conv_minmax_fp32_neon_params 355 k-block: 8 356- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x8__neonv8_mlal_lane 357 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 358 k-block: 8 359- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x8__neonv8_mlal_lane_prfm 360 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 361 k-block: 8 362- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x16__neon_mlal_lane 363 init: xnn_init_qc8_conv_minmax_fp32_neon_params 364 k-block: 8 365- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x16__neon_mlal_lane_prfm 366 init: xnn_init_qc8_conv_minmax_fp32_neon_params 367 k-block: 8 368- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x16__neonv8_mlal_lane 369 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 370 k-block: 8 371- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x16__neonv8_mlal_lane_prfm 372 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 373 k-block: 8 374- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__neon_mlal_lane 375 init: xnn_init_qc8_conv_minmax_fp32_neon_params 376 k-block: 8 377- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__neon_mlal_lane_prfm 378 init: xnn_init_qc8_conv_minmax_fp32_neon_params 379 k-block: 8 380- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__neonv8_mlal_lane 381 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 382 k-block: 8 383- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8__neonv8_mlal_lane_prfm 384 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 385 k-block: 8 386- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x8c4__neondot 387 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 388 k-block: 8 389- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16__neon_mlal_lane 390 init: xnn_init_qc8_conv_minmax_fp32_neon_params 391 k-block: 8 392- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16__neon_mlal_lane_prfm 393 init: xnn_init_qc8_conv_minmax_fp32_neon_params 394 k-block: 8 395- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16__neonv8_mlal_lane 396 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 397 k-block: 8 398- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16__neonv8_mlal_lane_prfm 399 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 400 k-block: 8 401- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__neondot 402 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 403 k-block: 8 404- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x8__neon_mlal_lane 405 init: xnn_init_qc8_conv_minmax_fp32_neon_params 406 k-block: 8 407- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x8__neon_mlal_lane_prfm 408 init: xnn_init_qc8_conv_minmax_fp32_neon_params 409 k-block: 8 410- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x8__neonv8_mlal_lane 411 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 412 k-block: 8 413- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x8__neonv8_mlal_lane_prfm 414 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 415 k-block: 8 416- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x8c4__neondot 417 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 418 k-block: 8 419- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x16__neon_mlal_lane 420 init: xnn_init_qc8_conv_minmax_fp32_neon_params 421 k-block: 8 422- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x16__neon_mlal_lane_prfm 423 init: xnn_init_qc8_conv_minmax_fp32_neon_params 424 k-block: 8 425- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x16__neonv8_mlal_lane 426 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 427 k-block: 8 428- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x16__neonv8_mlal_lane_prfm 429 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 430 k-block: 8 431- name: xnn_qc8_gemm_minmax_fp32_ukernel_6x16c4__neondot 432 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 433 k-block: 8 434- name: xnn_qc8_gemm_minmax_fp32_ukernel_8x8c4__neondot 435 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 436 k-block: 8 437- name: xnn_qc8_gemm_minmax_fp32_ukernel_8x16c4__neondot 438 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 439 k-block: 8 440# x86 SSE 441- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__sse2_ld64 442 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 443 k-block: 8 444- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__sse41_ld64 445 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 446 k-block: 8 447- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__sse2_ld64 448 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 449 k-block: 8 450- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__sse41_ld64 451 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 452 k-block: 8 453- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__sse2_ld64 454 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 455 k-block: 8 456- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__sse41_ld64 457 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 458 k-block: 8 459- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__sse2_ld64 460 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 461 k-block: 8 462- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__sse41_ld64 463 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 464 k-block: 8 465# x86 AVX 466- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__avx_ld64 467 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 468 k-block: 8 469- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__xop_ld64 470 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 471 k-block: 8 472- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__avx_ld64 473 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 474 k-block: 8 475- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__xop_ld64 476 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 477 k-block: 8 478- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__avx_ld64 479 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 480 k-block: 8 481- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__xop_ld64 482 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 483 k-block: 8 484- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__avx_ld64 485 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 486 k-block: 8 487- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__xop_ld64 488 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 489 k-block: 8 490# x86 SSE 491- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__sse2_ld128 492 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 493 k-block: 8 494- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__sse41_ld128 495 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 496 k-block: 8 497- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__sse2_ld128 498 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 499 k-block: 8 500- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__sse41_ld128 501 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 502 k-block: 8 503- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__sse2_ld128 504 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 505 k-block: 8 506- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__sse41_ld128 507 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 508 k-block: 8 509- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__sse2_ld128 510 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 511 k-block: 8 512- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__sse41_ld128 513 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 514 k-block: 8 515# x86 AVX 516- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__avx_ld128 517 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 518 k-block: 8 519- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__xop_ld128 520 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 521 k-block: 8 522- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__avx_ld128 523 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 524 k-block: 8 525- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__xop_ld128 526 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 527 k-block: 8 528- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__avx_ld128 529 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 530 k-block: 8 531- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__xop_ld128 532 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 533 k-block: 8 534- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__avx_ld128 535 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 536 k-block: 8 537- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__xop_ld128 538 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 539 k-block: 8 540# x86 SSE 541- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__sse2_ld64 542 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 543 k-block: 8 544- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__sse41_ld64 545 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 546 k-block: 8 547- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__sse2_ld64 548 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 549 k-block: 8 550- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__sse41_ld64 551 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 552 k-block: 8 553- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__sse2_ld64 554 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 555 k-block: 8 556- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__sse41_ld64 557 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 558 k-block: 8 559- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__sse2_ld64 560 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 561 k-block: 8 562- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__sse41_ld64 563 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 564 k-block: 8 565# x86 AVX 566- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__avx_ld64 567 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 568 k-block: 8 569- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__xop_ld64 570 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 571 k-block: 8 572- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__avx_ld64 573 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 574 k-block: 8 575- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__xop_ld64 576 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 577 k-block: 8 578- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__avx_ld64 579 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 580 k-block: 8 581- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__xop_ld64 582 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 583 k-block: 8 584- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__avx_ld64 585 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 586 k-block: 8 587- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__xop_ld64 588 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 589 k-block: 8 590# x86 SSE 591- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__sse2_ld128 592 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 593 k-block: 8 594- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__sse41_ld128 595 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 596 k-block: 8 597- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__sse2_ld128 598 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 599 k-block: 8 600- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__sse41_ld128 601 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 602 k-block: 8 603- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__sse2_ld128 604 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 605 k-block: 8 606- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__sse41_ld128 607 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 608 k-block: 8 609- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__sse2_ld128 610 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 611 k-block: 8 612- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__sse41_ld128 613 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 614 k-block: 8 615# x86 AVX 616- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__avx_ld128 617 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 618 k-block: 8 619- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__xop_ld128 620 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 621 k-block: 8 622- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__avx_ld128 623 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 624 k-block: 8 625- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__xop_ld128 626 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 627 k-block: 8 628- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__avx_ld128 629 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 630 k-block: 8 631- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__xop_ld128 632 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 633 k-block: 8 634- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__avx_ld128 635 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 636 k-block: 8 637- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__xop_ld128 638 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 639 k-block: 8 640# x86 SSE 641- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__sse2_ld64 642 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 643 k-block: 8 644- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__sse41_ld64 645 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 646 k-block: 8 647- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__sse2_ld64 648 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 649 k-block: 8 650- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__sse41_ld64 651 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 652 k-block: 8 653- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__sse2_ld64 654 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 655 k-block: 8 656- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__sse41_ld64 657 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 658 k-block: 8 659# x86 AVX 660- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__avx_ld64 661 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 662 k-block: 8 663- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__xop_ld64 664 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 665 k-block: 8 666- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__avx_ld64 667 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 668 k-block: 8 669- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__xop_ld64 670 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 671 k-block: 8 672- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__avx_ld64 673 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 674 k-block: 8 675- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__xop_ld64 676 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 677 k-block: 8 678# x86 SSE 679- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__sse2_ld128 680 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 681 k-block: 8 682- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__sse41_ld128 683 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 684 k-block: 8 685- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__sse2_ld128 686 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 687 k-block: 8 688- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__sse41_ld128 689 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 690 k-block: 8 691- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__sse2_ld128 692 init: xnn_init_qc8_conv_minmax_fp32_sse2_params 693 k-block: 8 694- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__sse41_ld128 695 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 696 k-block: 8 697# x86 AVX 698- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__avx_ld128 699 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 700 k-block: 8 701- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__xop_ld128 702 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 703 k-block: 8 704- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__avx_ld128 705 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 706 k-block: 8 707- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__xop_ld128 708 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 709 k-block: 8 710- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__avx_ld128 711 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 712 k-block: 8 713- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__xop_ld128 714 init: xnn_init_qc8_conv_minmax_fp32_sse4_params 715 k-block: 8 716# x86 AVX 717- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__avx2 718 init: xnn_init_qc8_conv_minmax_fp32_avx2_params 719 k-block: 8 720- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__avx2 721 init: xnn_init_qc8_conv_minmax_fp32_avx2_params 722 k-block: 8 723- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x8c8__avx2 724 init: xnn_init_qc8_conv_minmax_fp32_avx2_params 725 k-block: 8 726- name: xnn_qc8_gemm_xw_minmax_fp32_ukernel_1x8c8__avx2 727 init: xnn_init_qc8_conv_minmax_fp32_avx2_params 728 k-block: 8 729- name: xnn_qc8_gemm_xw_minmax_fp32_ukernel_2x8c8__avx2 730 init: xnn_init_qc8_conv_minmax_fp32_avx2_params 731 k-block: 8 732- name: xnn_qc8_gemm_xw_minmax_fp32_ukernel_3x8c8__avx2 733 init: xnn_init_qc8_conv_minmax_fp32_avx2_params 734 k-block: 8 735# x86 AVX512 736- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x16c8__avx512skx 737 init: xnn_init_qc8_conv_minmax_fp32_avx512_params 738 k-block: 8 739- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x16c8__avx512skx 740 init: xnn_init_qc8_conv_minmax_fp32_avx512_params 741 k-block: 8 742- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x16c8__avx512skx 743 init: xnn_init_qc8_conv_minmax_fp32_avx512_params 744 k-block: 8 745- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x16c8__avx512skx 746 init: xnn_init_qc8_conv_minmax_fp32_avx512_params 747 k-block: 8 748# WAsm SIMD 749- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld64 750 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 751 k-block: 8 752- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld128 753 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 754 k-block: 8 755- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld64 756 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 757 k-block: 8 758- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld128 759 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 760 k-block: 8 761- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld64 762 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 763 k-block: 8 764- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld128 765 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 766 k-block: 8 767- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld64 768 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 769 k-block: 8 770- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld128 771 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 772 k-block: 8 773- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld64 774 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 775 k-block: 8 776- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld128 777 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 778 k-block: 8 779- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld64 780 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 781 k-block: 8 782- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld128 783 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 784 k-block: 8 785- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld64 786 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 787 k-block: 8 788- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld128 789 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 790 k-block: 8 791- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld64 792 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 793 k-block: 8 794- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld128 795 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 796 k-block: 8 797- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld64 798 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 799 k-block: 8 800- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld128 801 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 802 k-block: 8 803- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld64 804 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 805 k-block: 8 806- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld128 807 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 808 k-block: 8 809- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld64 810 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 811 k-block: 8 812- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld128 813 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 814 k-block: 8 815- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld64 816 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 817 k-block: 8 818- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld128 819 init: xnn_init_qc8_conv_minmax_fp32_wasmsimd_params 820 k-block: 8 821# WAsm 822- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x2__wasm_fmagic 823 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 824 k-block: 1 825- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4__wasm_fmagic 826 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 827 k-block: 1 828- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x2__wasm_fmagic 829 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 830 k-block: 1 831- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4__wasm_fmagic 832 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 833 k-block: 1 834- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x2__wasm_fmagic 835 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 836 k-block: 1 837- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4__wasm_fmagic 838 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 839 k-block: 1 840- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x2__wasm_fmagic 841 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 842 k-block: 1 843- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4__wasm_fmagic 844 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 845 k-block: 1 846# Scalar 847- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x2__scalar_fmagic 848 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 849 k-block: 1 850- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x2__scalar_imagic 851 init: xnn_init_qc8_conv_minmax_fp32_scalar_imagic_params 852 k-block: 1 853- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x2__scalar_lrintf 854 init: xnn_init_qc8_conv_minmax_fp32_scalar_lrintf_params 855 k-block: 1 856- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4__scalar_fmagic 857 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 858 k-block: 1 859- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4__scalar_imagic 860 init: xnn_init_qc8_conv_minmax_fp32_scalar_imagic_params 861 k-block: 1 862- name: xnn_qc8_gemm_minmax_fp32_ukernel_1x4__scalar_lrintf 863 init: xnn_init_qc8_conv_minmax_fp32_scalar_lrintf_params 864 k-block: 1 865- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x2__scalar_fmagic 866 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 867 k-block: 1 868- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x2__scalar_imagic 869 init: xnn_init_qc8_conv_minmax_fp32_scalar_imagic_params 870 k-block: 1 871- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x2__scalar_lrintf 872 init: xnn_init_qc8_conv_minmax_fp32_scalar_lrintf_params 873 k-block: 1 874- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4__scalar_fmagic 875 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 876 k-block: 1 877- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4__scalar_imagic 878 init: xnn_init_qc8_conv_minmax_fp32_scalar_imagic_params 879 k-block: 1 880- name: xnn_qc8_gemm_minmax_fp32_ukernel_2x4__scalar_lrintf 881 init: xnn_init_qc8_conv_minmax_fp32_scalar_lrintf_params 882 k-block: 1 883- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x2__scalar_fmagic 884 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 885 k-block: 1 886- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x2__scalar_imagic 887 init: xnn_init_qc8_conv_minmax_fp32_scalar_imagic_params 888 k-block: 1 889- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x2__scalar_lrintf 890 init: xnn_init_qc8_conv_minmax_fp32_scalar_lrintf_params 891 k-block: 1 892- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4__scalar_fmagic 893 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 894 k-block: 1 895- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4__scalar_imagic 896 init: xnn_init_qc8_conv_minmax_fp32_scalar_imagic_params 897 k-block: 1 898- name: xnn_qc8_gemm_minmax_fp32_ukernel_3x4__scalar_lrintf 899 init: xnn_init_qc8_conv_minmax_fp32_scalar_lrintf_params 900 k-block: 1 901- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x2__scalar_fmagic 902 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 903 k-block: 1 904- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x2__scalar_imagic 905 init: xnn_init_qc8_conv_minmax_fp32_scalar_imagic_params 906 k-block: 1 907- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x2__scalar_lrintf 908 init: xnn_init_qc8_conv_minmax_fp32_scalar_lrintf_params 909 k-block: 1 910- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4__scalar_fmagic 911 init: xnn_init_qc8_conv_minmax_fp32_scalar_fmagic_params 912 k-block: 1 913- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4__scalar_imagic 914 init: xnn_init_qc8_conv_minmax_fp32_scalar_imagic_params 915 k-block: 1 916- name: xnn_qc8_gemm_minmax_fp32_ukernel_4x4__scalar_lrintf 917 init: xnn_init_qc8_conv_minmax_fp32_scalar_lrintf_params 918 k-block: 1 919# AArch32 JIT assembly 920- name: xnn_generate_qc8_gemm_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_ld64 921 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 922 k-block: 8 923 assembly: true 924- name: xnn_generate_qc8_gemm_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_ld64 925 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 926 k-block: 8 927 assembly: true 928- name: xnn_generate_qc8_gemm_fp32_ukernel_4x8c4__aarch32_neondot_ld64 929 init: xnn_init_qc8_conv_minmax_fp32_neonv8_params 930 k-block: 8 931 assembly: true 932