749 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			YAML
		
	
	
	
			
		
		
	
	
			749 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			YAML
		
	
	
	
# Copyright 2021 Google LLC
 | 
						|
#
 | 
						|
# This source code is licensed under the BSD-style license found in the
 | 
						|
# LICENSE file in the root directory of this source tree.
 | 
						|
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__aarch32_neondot_cortex_a55
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__aarch32_neondot_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a53
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a53
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a7
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a7
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch64_neon_mlal_lane_prfm_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch64_neon_mlal_lane_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mull_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mull_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mull_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mull_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mull_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mull_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mull_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mull_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mlal_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mlal_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mlal_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mlal_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mlal_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mlal_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mlal_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mlal_ld4r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4s2__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4s2__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4s2__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4s2__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4s2__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4s2__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4s2__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4s2__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4s2__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4s2__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4s2__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4s2__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4s2__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4s2__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4s2__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4s2__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2s4__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2s4__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2s4__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2s4__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2s4__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2s4__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2s4__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2s4__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2s4__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2s4__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2s4__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2s4__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2s4__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2s4__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2s4__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2s4__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mull_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mlal_ld1r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mull_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mlal_ld2r
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mull_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mlal_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mlal_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mlal_cortex_a53
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mlal_prfm_cortex_a53
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c16__aarch64_neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__aarch64_neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__aarch64_neon_mlal_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__aarch64_neon_mlal_cortex_a53
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__aarch64_neon_mlal_prfm_cortex_a53
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_prfm_cortex_a53
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_cortex_a53
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_prfm_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__aarch64_neondot_ld32
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 4
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__aarch64_neondot_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_ld32
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 4
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_ld128
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_cortex_a55
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
  assembly: true
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c8__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c8__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c8__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c8__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c8__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c8__neon_mull
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c8__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c8__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c8__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c8__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c8__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c8__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c16__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c16__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c16__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c16__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c16__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c16__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c16__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c16__neon_mlal
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 16
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neondot
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neondot
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_6x8c4__neondot
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_8x8c4__neondot
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neondot
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neondot
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_6x16c4__neondot
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_8x16c4__neondot
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_6x8__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_6x16__neon_mlal_lane
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_6x8__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_6x16__neon_mlal_lane_prfm
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x8__neon_mull_addw_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x8__neon_mull_addw_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x8__neon_mull_addw_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__neon_mull_addw_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_1x16__neon_mull_addw_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_2x16__neon_mull_addw_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_3x16__neon_mull_addw_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__neon_mull_addw_dup
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
- name: xnn_generate_qs8_gemm_rndnu_ukernel_4x8c4__aarch32_neondot_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_generate_qs8_gemm_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 | 
						|
- name: xnn_generate_qs8_gemm_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_ld64
 | 
						|
  init: xnn_init_qs8_conv_minmax_rndnu_neon_params
 | 
						|
  k-block: 8
 | 
						|
  assembly: true
 |