Macros | |
| #define | ARM_NN_DW_NT_T_F16_TILE_ROWS (4) |
| #define | ARM_NN_DW_NT_T_F32_TILE_ROWS (4) |
Functions | |
| int32_t | arm_convolve_s16_get_buffer_size (const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for s16 convolution function. | |
| int32_t | arm_convolve_wrapper_s16_get_buffer_size (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required buffer size for arm_convolve_wrapper_s16. | |
| int32_t | arm_convolve_wrapper_s16_get_buffer_size_dsp (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required buffer size for arm_convolve_wrapper_s16 for for processors with DSP extension. Refer to arm_convolve_wrapper_s16_get_buffer_size() for function argument details. | |
| int32_t | arm_convolve_wrapper_s16_get_buffer_size_mve (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required buffer size for arm_convolve_wrapper_s16 for Arm(R) Helium Architecture case. Refer to arm_convolve_wrapper_s16_get_buffer_size() for function argument details. | |
| int32_t | arm_convolve_s4_get_buffer_size (const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for s4 convolution function. | |
| int32_t | arm_convolve_1_x_n_s4_get_buffer_size (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required additional buffer size for 1xn convolution. | |
| int32_t | arm_convolve_1x1_s4_fast_get_buffer_size (const cmsis_nn_dims *input_dims) |
| Get the required buffer size for arm_convolve_1x1_s4_fast. | |
| int32_t | arm_convolve_wrapper_s4_get_buffer_size (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required buffer size for arm_convolve_wrapper_s4. | |
| int32_t | arm_convolve_wrapper_s4_get_buffer_size_mve (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required buffer size for arm_convolve_wrapper_s4 for Arm(R) Helium Architecture case. Refer to arm_convolve_wrapper_s4_get_buffer_size() for function argument details. | |
| int32_t | arm_convolve_wrapper_s4_get_buffer_size_dsp (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required buffer size for arm_convolve_wrapper_s4 for processors with DSP extension. Refer to arm_convolve_wrapper_s4_get_buffer_size() for function argument details. | |
| int32_t | arm_convolve_s8_get_buffer_size (const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for s8 convolution function. | |
| int32_t | arm_convolve_s8_get_buffer_size_mve (const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for optimized s8 convolution. This is for processors with MVE extension. Refer to arm_convolve_s8_get_buffer_size() for function argument details. | |
| int32_t | arm_convolve_1_x_n_s8_get_buffer_size (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required additional buffer size for 1xn convolution. | |
| int32_t | arm_convolve_1x1_s8_fast_get_buffer_size (const cmsis_nn_dims *input_dims) |
| Get the required buffer size for arm_convolve_1x1_s8_fast. | |
| int32_t | arm_convolve_wrapper_s8_get_buffer_size (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required buffer size for arm_convolve_wrapper_s8. | |
| int32_t | arm_convolve_wrapper_s8_get_buffer_size_mve (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required buffer size for arm_convolve_wrapper_s8 for Arm(R) Helium Architecture case. Refer to arm_convolve_wrapper_s8_get_buffer_size() for function argument details. | |
| int32_t | arm_convolve_wrapper_s8_get_buffer_size_dsp (const cmsis_nn_conv_params *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the required buffer size for arm_convolve_wrapper_s8 for processors with DSP extension. Refer to arm_convolve_wrapper_s8_get_buffer_size() for function argument details. | |
| int32_t | arm_depthwise_conv_fast_s16_get_buffer_size (const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for optimized s16 depthwise convolution function with constraint that in_channel equals out_channel. | |
| int32_t | arm_depthwise_conv_wrapper_s16_get_buffer_size (const cmsis_nn_dw_conv_params *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get size of additional buffer required by arm_depthwise_conv_wrapper_s16() | |
| int32_t | arm_depthwise_conv_wrapper_s16_get_buffer_size_mve (const cmsis_nn_dw_conv_params *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get size of additional buffer required by arm_depthwise_conv_wrapper_s16() for Arm(R) Helium Architecture case. Refer to arm_depthwise_conv_wrapper_s16_get_buffer_size() for function argument details. | |
| int32_t | arm_depthwise_conv_wrapper_s16_get_buffer_size_dsp (const cmsis_nn_dw_conv_params *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get size of additional buffer required by arm_depthwise_conv_wrapper_s16() for processors with DSP extension. Refer to arm_depthwise_conv_wrapper_s16_get_buffer_size() for function argument details. | |
| int32_t | arm_depthwise_conv_s4_opt_get_buffer_size (const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for optimized s4 depthwise convolution function with constraint that in_channel equals out_channel. | |
| int32_t | arm_depthwise_conv_wrapper_s4_get_buffer_size (const cmsis_nn_dw_conv_params *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get size of additional buffer required by arm_depthwise_conv_wrapper_s4() | |
| int32_t | arm_depthwise_conv_wrapper_s4_get_buffer_size_dsp (const cmsis_nn_dw_conv_params *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get size of additional buffer required by arm_depthwise_conv_wrapper_s4() for processors with DSP extension. Refer to arm_depthwise_conv_wrapper_s4_get_buffer_size() for function argument details. | |
| int32_t | arm_depthwise_conv_wrapper_s4_get_buffer_size_mve (const cmsis_nn_dw_conv_params *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get size of additional buffer required by arm_depthwise_conv_wrapper_s4() for Arm(R) Helium Architecture case. Refer to arm_depthwise_conv_wrapper_s4_get_buffer_size() for function argument details. | |
| int32_t | arm_depthwise_conv_s8_opt_get_buffer_size_mve (const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for optimized s8 depthwise convolution function with constraint that in_channel equals out_channel. This is for processors with MVE extension. Refer to arm_depthwise_conv_s8_opt_get_buffer_size() for function argument details. | |
| int32_t | arm_depthwise_conv_s8_opt_get_buffer_size_dsp (const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for optimized s8 depthwise convolution function with constraint that in_channel equals out_channel. This is for processors with DSP extension. Refer to arm_depthwise_conv_s8_opt_get_buffer_size() for function argument details. | |
| int32_t | arm_depthwise_conv_s8_opt_get_buffer_size (const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for optimized s8 depthwise convolution function with constraint that in_channel equals out_channel. | |
| int32_t | arm_depthwise_conv_wrapper_s8_get_buffer_size (const cmsis_nn_dw_conv_params *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get size of additional buffer required by arm_depthwise_conv_wrapper_s8() | |
| int32_t | arm_depthwise_conv_wrapper_s8_get_buffer_size_dsp (const cmsis_nn_dw_conv_params *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get size of additional buffer required by arm_depthwise_conv_wrapper_s8() for processors with DSP extension. Refer to arm_depthwise_conv_wrapper_s8_get_buffer_size() for function argument details. | |
| int32_t | arm_depthwise_conv_wrapper_s8_get_buffer_size_mve (const cmsis_nn_dw_conv_params *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get size of additional buffer required by arm_depthwise_conv_wrapper_s8() for Arm(R) Helium Architecture case. Refer to arm_depthwise_conv_wrapper_s8_get_buffer_size() for function argument details. | |
| int32_t | arm_transpose_conv_s8_get_buffer_size (const cmsis_nn_transpose_conv_params *transpose_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *out_dims) |
| Get the required buffer size for ctx in s8 transpose conv function. | |
| int32_t | arm_transpose_conv_s8_get_buffer_size_mve (const cmsis_nn_transpose_conv_params *transpose_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *out_dims) |
| Get size of additional buffer required by arm_transpose_conv_s8() for Arm(R) Helium Architecture case. Refer to arm_transpose_conv_s8_get_buffer_size() for function argument details. | |
| int32_t | arm_transpose_conv_s8_get_reverse_conv_buffer_size (const cmsis_nn_transpose_conv_params *transpose_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims) |
| Get the required buffer size for output_ctx in s8 transpose conv function. | |
| int32_t | arm_depthwise_conv_f16_get_buffer_size (const cmsis_nn_dw_conv_params_f16 *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the temporary buffer size required by depthwise convolution. | |
| int32_t | arm_depthwise_conv_wrapper_f16_get_buffer_size (const cmsis_nn_dw_conv_params_f16 *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the buffer size required by the depthwise convolution wrapper. | |
| int32_t | arm_convolve_f16_get_buffer_size (const cmsis_nn_conv_params_f16 *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the temporary buffer size required by convolution. | |
| int32_t | arm_convolve_wrapper_f16_get_buffer_size (const cmsis_nn_conv_params_f16 *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the buffer size required by the convolution wrapper. | |
| int32_t | arm_convolve_1x1_f16_get_buffer_size (const cmsis_nn_conv_params_f16 *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the buffer size required by 1x1 convolution. | |
| int32_t | arm_convolve_1_x_n_f16_get_buffer_size (const cmsis_nn_conv_params_f16 *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the buffer size required by 1xN convolution. | |
| int32_t | arm_fully_connected_f16_get_buffer_size (const cmsis_nn_fc_params_f16 *fc_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the temporary buffer size required by the fully connected layer. | |
| int32_t | arm_batch_matmul_f16_get_buffer_size (const cmsis_nn_bmm_params_f16 *bmm_params, const cmsis_nn_dims *input_lhs_dims, const cmsis_nn_dims *input_rhs_dims, const cmsis_nn_dims *output_dims) |
| Get the temporary buffer size required by batched matrix multiplication. | |
| int32_t | arm_depthwise_conv_f32_get_buffer_size (const cmsis_nn_dw_conv_params_f32 *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the temporary buffer size required by depthwise convolution. | |
| int32_t | arm_depthwise_conv_wrapper_f32_get_buffer_size (const cmsis_nn_dw_conv_params_f32 *dw_conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the buffer size required by the depthwise convolution wrapper. | |
| int32_t | arm_convolve_f32_get_buffer_size (const cmsis_nn_conv_params_f32 *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the temporary buffer size required by convolution. | |
| int32_t | arm_convolve_wrapper_f32_get_buffer_size (const cmsis_nn_conv_params_f32 *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims) |
| Get the buffer size required by the convolution wrapper. | |
| int32_t | arm_convolve_1x1_f32_get_buffer_size (const cmsis_nn_conv_params_f32 *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the buffer size required by 1x1 convolution. | |
| int32_t | arm_convolve_1_x_n_f32_get_buffer_size (const cmsis_nn_conv_params_f32 *conv_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the buffer size required by 1xN convolution. | |
| int32_t | arm_fully_connected_f32_get_buffer_size (const cmsis_nn_fc_params_f32 *fc_params, const cmsis_nn_dims *input_dims, const cmsis_nn_dims *filter_dims, const cmsis_nn_dims *output_dims, arm_nn_tensor_layout layout) |
| Get the temporary buffer size required by the fully connected layer. | |
| int32_t | arm_batch_matmul_f32_get_buffer_size (const cmsis_nn_bmm_params_f32 *bmm_params, const cmsis_nn_dims *input_lhs_dims, const cmsis_nn_dims *input_rhs_dims, const cmsis_nn_dims *output_dims) |
| Get the temporary buffer size required by batched matrix multiplication. | |
| #define ARM_NN_DW_NT_T_F16_TILE_ROWS (4) |
| #define ARM_NN_DW_NT_T_F32_TILE_ROWS (4) |
| int32_t arm_batch_matmul_f16_get_buffer_size | ( | const cmsis_nn_bmm_params_f16 * | bmm_params, |
| const cmsis_nn_dims * | input_lhs_dims, | ||
| const cmsis_nn_dims * | input_rhs_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the temporary buffer size required by batched matrix multiplication.
| [in] | bmm_params | Batch matmul parameters. |
| [in] | input_lhs_dims | Left-hand-side input tensor dimensions. |
| [in] | input_rhs_dims | Right-hand-side input tensor dimensions. |
| [in] | output_dims | Output tensor dimensions. |
| int32_t arm_batch_matmul_f32_get_buffer_size | ( | const cmsis_nn_bmm_params_f32 * | bmm_params, |
| const cmsis_nn_dims * | input_lhs_dims, | ||
| const cmsis_nn_dims * | input_rhs_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the temporary buffer size required by batched matrix multiplication.
| [in] | bmm_params | Batch matmul parameters. |
| [in] | input_lhs_dims | Left-hand-side input tensor dimensions. |
| [in] | input_rhs_dims | Right-hand-side input tensor dimensions. |
| [in] | output_dims | Output tensor dimensions. |
| int32_t arm_convolve_1_x_n_f16_get_buffer_size | ( | const cmsis_nn_conv_params_f16 * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the buffer size required by 1xN convolution.
| int32_t arm_convolve_1_x_n_f32_get_buffer_size | ( | const cmsis_nn_conv_params_f32 * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the buffer size required by 1xN convolution.
| int32_t arm_convolve_1_x_n_s4_get_buffer_size | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required additional buffer size for 1xn convolution.
| [in] | conv_params | Convolution parameters (e.g. strides, dilations, pads,...). Range of conv_params->input_offset : [-127, 128] Range of conv_params->output_offset : [-128, 127] |
| [in] | input_dims | Input (activation) tensor dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter tensor dimensions. Format: [C_OUT, 1, WK, C_IN] where WK is the horizontal spatial filter dimension |
| [in] | output_dims | Output tensor dimensions. Format: [N, H, W, C_OUT] |
| int32_t arm_convolve_1_x_n_s8_get_buffer_size | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required additional buffer size for 1xn convolution.
| [in] | conv_params | Convolution parameters (e.g. strides, dilations, pads,...). Range of conv_params->input_offset : [-127, 128] Range of conv_params->output_offset : [-128, 127] |
| [in] | input_dims | Input (activation) tensor dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter tensor dimensions. Format: [C_OUT, 1, WK, C_IN] where WK is the horizontal spatial filter dimension |
| [in] | output_dims | Output tensor dimensions. Format: [N, H, W, C_OUT] |
| int32_t arm_convolve_1x1_f16_get_buffer_size | ( | const cmsis_nn_conv_params_f16 * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the buffer size required by 1x1 convolution.
0 for the unity-stride no-pack path. For non-unity-stride NHWC 1x1 convolution, the returned scratch size enables the packed-tile + GEMM path. When conv_params->weight_format is ARM_NN_WEIGHT_FORMAT_NT_N_PACKED, this still excludes the offline-packed filter storage itself. | int32_t arm_convolve_1x1_f32_get_buffer_size | ( | const cmsis_nn_conv_params_f32 * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the buffer size required by 1x1 convolution.
0 for the unity-stride no-pack path. For non-unity-stride NHWC 1x1 convolution, the returned scratch size enables the packed-tile + GEMM path. When conv_params->weight_format is ARM_NN_WEIGHT_FORMAT_NT_N_PACKED, this still excludes the offline-packed filter storage itself. | int32_t arm_convolve_1x1_s4_fast_get_buffer_size | ( | const cmsis_nn_dims * | input_dims | ) |
Get the required buffer size for arm_convolve_1x1_s4_fast.
| [in] | input_dims | Input (activation) dimensions |
| int32_t arm_convolve_1x1_s8_fast_get_buffer_size | ( | const cmsis_nn_dims * | input_dims | ) |
Get the required buffer size for arm_convolve_1x1_s8_fast.
| [in] | input_dims | Input (activation) dimensions |
| int32_t arm_convolve_f16_get_buffer_size | ( | const cmsis_nn_conv_params_f16 * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the temporary buffer size required by convolution.
| [in] | conv_params | Convolution parameters. |
| [in] | input_dims | Input tensor dimensions. |
| [in] | filter_dims | Filter tensor dimensions. |
| [in] | output_dims | Output tensor dimensions. |
| [in] | layout | Tensor layout selector. |
conv_params->weight_format is ARM_NN_WEIGHT_FORMAT_NT_N_PACKED, this still reports only the temporary input/im2col scratch requirement. Any offline-packed filter storage is expected to be provided by the caller.| int32_t arm_convolve_f32_get_buffer_size | ( | const cmsis_nn_conv_params_f32 * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the temporary buffer size required by convolution.
| [in] | conv_params | Convolution parameters. |
| [in] | input_dims | Input tensor dimensions. |
| [in] | filter_dims | Filter tensor dimensions. |
| [in] | output_dims | Output tensor dimensions. |
| [in] | layout | Tensor layout selector. |
conv_params->weight_format is ARM_NN_WEIGHT_FORMAT_NT_N_PACKED, this still reports only the temporary input/im2col scratch requirement. Any offline-packed filter storage is expected to be provided by the caller.| int32_t arm_convolve_s16_get_buffer_size | ( | const cmsis_nn_dims * | input_dims, |
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for s16 convolution function.
| [in] | input_dims | Input (activation) tensor dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter tensor dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions |
| int32_t arm_convolve_s4_get_buffer_size | ( | const cmsis_nn_dims * | input_dims, |
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for s4 convolution function.
| [in] | input_dims | Input (activation) tensor dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter tensor dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions |
| int32_t arm_convolve_s8_get_buffer_size | ( | const cmsis_nn_dims * | input_dims, |
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for s8 convolution function.
| [in] | input_dims | Input (activation) tensor dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter tensor dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions |
| int32_t arm_convolve_s8_get_buffer_size_mve | ( | const cmsis_nn_dims * | input_dims, |
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for optimized s8 convolution. This is for processors with MVE extension. Refer to arm_convolve_s8_get_buffer_size() for function argument details.
| int32_t arm_convolve_wrapper_f16_get_buffer_size | ( | const cmsis_nn_conv_params_f16 * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the buffer size required by the convolution wrapper.
| int32_t arm_convolve_wrapper_f32_get_buffer_size | ( | const cmsis_nn_conv_params_f32 * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the buffer size required by the convolution wrapper.
| int32_t arm_convolve_wrapper_s16_get_buffer_size | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required buffer size for arm_convolve_wrapper_s16.
| [in] | conv_params | Convolution parameters (e.g. strides, dilations, pads,...). conv_params->input_offset : Not used conv_params->output_offset : Not used |
| [in] | input_dims | Input (activation) dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions |
| [in] | output_dims | Output tensor dimensions. Format: [N, H, W, C_OUT] |
| int32_t arm_convolve_wrapper_s16_get_buffer_size_dsp | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required buffer size for arm_convolve_wrapper_s16 for for processors with DSP extension. Refer to arm_convolve_wrapper_s16_get_buffer_size() for function argument details.
| int32_t arm_convolve_wrapper_s16_get_buffer_size_mve | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required buffer size for arm_convolve_wrapper_s16 for Arm(R) Helium Architecture case. Refer to arm_convolve_wrapper_s16_get_buffer_size() for function argument details.
| int32_t arm_convolve_wrapper_s4_get_buffer_size | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required buffer size for arm_convolve_wrapper_s4.
| [in] | conv_params | Convolution parameters (e.g. strides, dilations, pads,...). Range of conv_params->input_offset : [-127, 128] Range of conv_params->output_offset : [-128, 127] |
| [in] | input_dims | Input (activation) dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions |
| [in] | output_dims | Output tensor dimensions. Format: [N, H, W, C_OUT] |
| int32_t arm_convolve_wrapper_s4_get_buffer_size_dsp | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required buffer size for arm_convolve_wrapper_s4 for processors with DSP extension. Refer to arm_convolve_wrapper_s4_get_buffer_size() for function argument details.
| int32_t arm_convolve_wrapper_s4_get_buffer_size_mve | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required buffer size for arm_convolve_wrapper_s4 for Arm(R) Helium Architecture case. Refer to arm_convolve_wrapper_s4_get_buffer_size() for function argument details.
| int32_t arm_convolve_wrapper_s8_get_buffer_size | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required buffer size for arm_convolve_wrapper_s8.
| [in] | conv_params | Convolution parameters (e.g. strides, dilations, pads,...). Range of conv_params->input_offset : [-127, 128] Range of conv_params->output_offset : [-128, 127] |
| [in] | input_dims | Input (activation) dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions |
| [in] | output_dims | Output tensor dimensions. Format: [N, H, W, C_OUT] |
| int32_t arm_convolve_wrapper_s8_get_buffer_size_dsp | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required buffer size for arm_convolve_wrapper_s8 for processors with DSP extension. Refer to arm_convolve_wrapper_s8_get_buffer_size() for function argument details.
| int32_t arm_convolve_wrapper_s8_get_buffer_size_mve | ( | const cmsis_nn_conv_params * | conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the required buffer size for arm_convolve_wrapper_s8 for Arm(R) Helium Architecture case. Refer to arm_convolve_wrapper_s8_get_buffer_size() for function argument details.
| int32_t arm_depthwise_conv_f16_get_buffer_size | ( | const cmsis_nn_dw_conv_params_f16 * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the temporary buffer size required by depthwise convolution.
| [in] | dw_conv_params | Depthwise convolution parameters. |
| [in] | input_dims | Input tensor dimensions. |
| [in] | filter_dims | Filter tensor dimensions. |
| [in] | output_dims | Output tensor dimensions. |
| [in] | layout | Tensor layout selector. |
| int32_t arm_depthwise_conv_f32_get_buffer_size | ( | const cmsis_nn_dw_conv_params_f32 * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the temporary buffer size required by depthwise convolution.
| [in] | dw_conv_params | Depthwise convolution parameters. |
| [in] | input_dims | Input tensor dimensions. |
| [in] | filter_dims | Filter tensor dimensions. |
| [in] | output_dims | Output tensor dimensions. |
| [in] | layout | Tensor layout selector. |
| int32_t arm_depthwise_conv_fast_s16_get_buffer_size | ( | const cmsis_nn_dims * | input_dims, |
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for optimized s16 depthwise convolution function with constraint that in_channel equals out_channel.
| [in] | input_dims | Input (activation) tensor dimensions. Format: [1, H, W, C_IN] Batch argument N is not used. |
| [in] | filter_dims | Filter tensor dimensions. Format: [1, H, W, C_OUT] |
| int32_t arm_depthwise_conv_s4_opt_get_buffer_size | ( | const cmsis_nn_dims * | input_dims, |
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for optimized s4 depthwise convolution function with constraint that in_channel equals out_channel.
| [in] | input_dims | Input (activation) tensor dimensions. Format: [1, H, W, C_IN] Batch argument N is not used. |
| [in] | filter_dims | Filter tensor dimensions. Format: [1, H, W, C_OUT] |
| int32_t arm_depthwise_conv_s8_opt_get_buffer_size | ( | const cmsis_nn_dims * | input_dims, |
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for optimized s8 depthwise convolution function with constraint that in_channel equals out_channel.
| [in] | input_dims | Input (activation) tensor dimensions. Format: [1, H, W, C_IN] Batch argument N is not used. |
| [in] | filter_dims | Filter tensor dimensions. Format: [1, H, W, C_OUT] |
| int32_t arm_depthwise_conv_s8_opt_get_buffer_size_dsp | ( | const cmsis_nn_dims * | input_dims, |
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for optimized s8 depthwise convolution function with constraint that in_channel equals out_channel. This is for processors with DSP extension. Refer to arm_depthwise_conv_s8_opt_get_buffer_size() for function argument details.
| int32_t arm_depthwise_conv_s8_opt_get_buffer_size_mve | ( | const cmsis_nn_dims * | input_dims, |
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for optimized s8 depthwise convolution function with constraint that in_channel equals out_channel. This is for processors with MVE extension. Refer to arm_depthwise_conv_s8_opt_get_buffer_size() for function argument details.
| int32_t arm_depthwise_conv_wrapper_f16_get_buffer_size | ( | const cmsis_nn_dw_conv_params_f16 * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the buffer size required by the depthwise convolution wrapper.
| int32_t arm_depthwise_conv_wrapper_f32_get_buffer_size | ( | const cmsis_nn_dw_conv_params_f32 * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get the buffer size required by the depthwise convolution wrapper.
| int32_t arm_depthwise_conv_wrapper_s16_get_buffer_size | ( | const cmsis_nn_dw_conv_params * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get size of additional buffer required by arm_depthwise_conv_wrapper_s16()
| [in] | dw_conv_params | Depthwise convolution parameters (e.g. strides, dilations, pads,...) Range of dw_conv_params->input_offset : Not used Range of dw_conv_params->input_offset : Not used |
| [in] | input_dims | Input (activation) tensor dimensions. Format: [H, W, C_IN] Batch argument N is not used and assumed to be 1. |
| [in] | filter_dims | Filter tensor dimensions. Format: [1, H, W, C_OUT] |
| [in] | output_dims | Output tensor dimensions. Format: [1, H, W, C_OUT] |
| int32_t arm_depthwise_conv_wrapper_s16_get_buffer_size_dsp | ( | const cmsis_nn_dw_conv_params * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get size of additional buffer required by arm_depthwise_conv_wrapper_s16() for processors with DSP extension. Refer to arm_depthwise_conv_wrapper_s16_get_buffer_size() for function argument details.
| int32_t arm_depthwise_conv_wrapper_s16_get_buffer_size_mve | ( | const cmsis_nn_dw_conv_params * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get size of additional buffer required by arm_depthwise_conv_wrapper_s16() for Arm(R) Helium Architecture case. Refer to arm_depthwise_conv_wrapper_s16_get_buffer_size() for function argument details.
| int32_t arm_depthwise_conv_wrapper_s4_get_buffer_size | ( | const cmsis_nn_dw_conv_params * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get size of additional buffer required by arm_depthwise_conv_wrapper_s4()
| [in] | dw_conv_params | Depthwise convolution parameters (e.g. strides, dilations, pads,...) Range of dw_conv_params->input_offset : [-127, 128] Range of dw_conv_params->input_offset : [-128, 127] |
| [in] | input_dims | Input (activation) tensor dimensions. Format: [H, W, C_IN] Batch argument N is not used and assumed to be 1. |
| [in] | filter_dims | Filter tensor dimensions. Format: [1, H, W, C_OUT] |
| [in] | output_dims | Output tensor dimensions. Format: [1, H, W, C_OUT] |
| int32_t arm_depthwise_conv_wrapper_s4_get_buffer_size_dsp | ( | const cmsis_nn_dw_conv_params * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get size of additional buffer required by arm_depthwise_conv_wrapper_s4() for processors with DSP extension. Refer to arm_depthwise_conv_wrapper_s4_get_buffer_size() for function argument details.
| int32_t arm_depthwise_conv_wrapper_s4_get_buffer_size_mve | ( | const cmsis_nn_dw_conv_params * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get size of additional buffer required by arm_depthwise_conv_wrapper_s4() for Arm(R) Helium Architecture case. Refer to arm_depthwise_conv_wrapper_s4_get_buffer_size() for function argument details.
| int32_t arm_depthwise_conv_wrapper_s8_get_buffer_size | ( | const cmsis_nn_dw_conv_params * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get size of additional buffer required by arm_depthwise_conv_wrapper_s8()
| [in] | dw_conv_params | Depthwise convolution parameters (e.g. strides, dilations, pads,...) Range of dw_conv_params->input_offset : [-127, 128] Range of dw_conv_params->input_offset : [-128, 127] |
| [in] | input_dims | Input (activation) tensor dimensions. Format: [H, W, C_IN] Batch argument N is not used and assumed to be 1. |
| [in] | filter_dims | Filter tensor dimensions. Format: [1, H, W, C_OUT] |
| [in] | output_dims | Output tensor dimensions. Format: [1, H, W, C_OUT] |
| int32_t arm_depthwise_conv_wrapper_s8_get_buffer_size_dsp | ( | const cmsis_nn_dw_conv_params * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get size of additional buffer required by arm_depthwise_conv_wrapper_s8() for processors with DSP extension. Refer to arm_depthwise_conv_wrapper_s8_get_buffer_size() for function argument details.
| int32_t arm_depthwise_conv_wrapper_s8_get_buffer_size_mve | ( | const cmsis_nn_dw_conv_params * | dw_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims | ||
| ) |
Get size of additional buffer required by arm_depthwise_conv_wrapper_s8() for Arm(R) Helium Architecture case. Refer to arm_depthwise_conv_wrapper_s8_get_buffer_size() for function argument details.
| int32_t arm_fully_connected_f16_get_buffer_size | ( | const cmsis_nn_fc_params_f16 * | fc_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the temporary buffer size required by the fully connected layer.
| [in] | fc_params | Fully connected parameters. |
| [in] | input_dims | Input tensor dimensions. |
| [in] | filter_dims | Filter tensor dimensions. |
| [in] | output_dims | Output tensor dimensions. |
| [in] | layout | Tensor layout selector. |
| int32_t arm_fully_connected_f32_get_buffer_size | ( | const cmsis_nn_fc_params_f32 * | fc_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | output_dims, | ||
| arm_nn_tensor_layout | layout | ||
| ) |
Get the temporary buffer size required by the fully connected layer.
| [in] | fc_params | Fully connected parameters. |
| [in] | input_dims | Input tensor dimensions. |
| [in] | filter_dims | Filter tensor dimensions. |
| [in] | output_dims | Output tensor dimensions. |
| [in] | layout | Tensor layout selector. |
| int32_t arm_transpose_conv_s8_get_buffer_size | ( | const cmsis_nn_transpose_conv_params * | transposed_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | out_dims | ||
| ) |
Get the required buffer size for ctx in s8 transpose conv function.
| [in] | transposed_conv_params | Transposed convolution parameters |
| [in] | input_dims | Input (activation) tensor dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter tensor dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions |
| [in] | out_dims | Output tensor dimensions. Format: [N, H, W, C_OUT] |
| int32_t arm_transpose_conv_s8_get_buffer_size_mve | ( | const cmsis_nn_transpose_conv_params * | transposed_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims, | ||
| const cmsis_nn_dims * | out_dims | ||
| ) |
Get size of additional buffer required by arm_transpose_conv_s8() for Arm(R) Helium Architecture case. Refer to arm_transpose_conv_s8_get_buffer_size() for function argument details.
| int32_t arm_transpose_conv_s8_get_reverse_conv_buffer_size | ( | const cmsis_nn_transpose_conv_params * | transposed_conv_params, |
| const cmsis_nn_dims * | input_dims, | ||
| const cmsis_nn_dims * | filter_dims | ||
| ) |
Get the required buffer size for output_ctx in s8 transpose conv function.
| [in] | transposed_conv_params | Transposed convolution parameters |
| [in] | input_dims | Input (activation) tensor dimensions. Format: [N, H, W, C_IN] |
| [in] | filter_dims | Filter tensor dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions |