GetBufferSizeNNConv
-
int32_t riscv_convolve_s16_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
-
int32_t riscv_convolve_wrapper_s16_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_convolve_wrapper_s16_get_buffer_size_dsp(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_convolve_s4_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
-
int32_t riscv_convolve_1_x_n_s4_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_convolve_1x1_s4_fast_get_buffer_size(const nmsis_nn_dims *input_dims)
-
int32_t riscv_convolve_wrapper_s4_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_convolve_wrapper_s4_get_buffer_size_dsp(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_convolve_s8_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
-
int32_t riscv_convolve_1_x_n_s8_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_convolve_1x1_s8_fast_get_buffer_size(const nmsis_nn_dims *input_dims)
-
int32_t riscv_convolve_wrapper_s8_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_convolve_wrapper_s8_get_buffer_size_dsp(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
- __STATIC_INLINE int32_t riscv_depthwise_conv_fast_s16_get_buffer_size_dsp (const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
-
int32_t riscv_depthwise_conv_fast_s16_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
-
int32_t riscv_depthwise_conv_wrapper_s16_get_buffer_size(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_depthwise_conv_wrapper_s16_get_buffer_size_dsp(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_depthwise_conv_s4_opt_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
-
int32_t riscv_depthwise_conv_wrapper_s4_get_buffer_size(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_depthwise_conv_wrapper_s4_get_buffer_size_dsp(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_depthwise_conv_s8_opt_get_buffer_size_dsp(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
-
int32_t riscv_depthwise_conv_s8_opt_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
-
int32_t riscv_depthwise_conv_wrapper_s8_get_buffer_size(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_depthwise_conv_wrapper_s8_get_buffer_size_dsp(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
-
int32_t riscv_transpose_conv_s8_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *out_dims)
-
int32_t riscv_transpose_conv_s8_get_buffer_size_dsp(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
- group GetBufferSizeNNConv
Functions
-
int32_t riscv_convolve_s16_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
Get the required buffer size for s16 convolution function.
- Parameters
input_dims – [in] Input (activation) tensor dimensions. Format: [N, H, W, C_IN]
filter_dims – [in] Filter tensor dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions
- Returns
The function returns required buffer size(bytes)
-
int32_t riscv_convolve_wrapper_s16_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get the required buffer size for riscv_convolve_wrapper_s16.
- Parameters
conv_params – [in] Convolution parameters (e.g. strides, dilations, pads,…). conv_params->input_offset : Not used conv_params->output_offset : Not used
input_dims – [in] Input (activation) dimensions. Format: [N, H, W, C_IN]
filter_dims – [in] Filter dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions
output_dims – [in] Output tensor dimensions. Format: [N, H, W, C_OUT]
- Returns
The function returns required buffer size(bytes)
-
int32_t riscv_convolve_wrapper_s16_get_buffer_size_dsp(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get the required buffer size for riscv_convolve_wrapper_s16 for for processors with DSP extension. Refer to riscv_convolve_wrapper_s16_get_buffer_size() for function argument details.
Note
Intended for compilation on Host. If compiling for an Riscv target, use riscv_convolve_wrapper_s16_get_buffer_size().
-
int32_t riscv_convolve_s4_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
Get the required buffer size for s4 convolution function.
- Parameters
input_dims – [in] Input (activation) tensor dimensions. Format: [N, H, W, C_IN]
filter_dims – [in] Filter tensor dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions
- Returns
The function returns required buffer size(bytes)
-
int32_t riscv_convolve_1_x_n_s4_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get the required additional buffer size for 1xn convolution.
- Parameters
conv_params – [in] Convolution parameters (e.g. strides, dilations, pads,…). Range of conv_params->input_offset : [-127, 128] Range of conv_params->output_offset : [-128, 127]
input_dims – [in] Input (activation) tensor dimensions. Format: [N, H, W, C_IN]
filter_dims – [in] Filter tensor dimensions. Format: [C_OUT, 1, WK, C_IN] where WK is the horizontal spatial filter dimension
output_dims – [in] Output tensor dimensions. Format: [N, H, W, C_OUT]
- Returns
The function returns required buffer size(bytes)
-
int32_t riscv_convolve_1x1_s4_fast_get_buffer_size(const nmsis_nn_dims *input_dims)
Get the required buffer size for riscv_convolve_1x1_s4_fast.
- Parameters
input_dims – [in] Input (activation) dimensions
- Returns
The function returns the required buffer size in bytes
-
int32_t riscv_convolve_wrapper_s4_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get the required buffer size for riscv_convolve_wrapper_s4.
- Parameters
conv_params – [in] Convolution parameters (e.g. strides, dilations, pads,…). Range of conv_params->input_offset : [-127, 128] Range of conv_params->output_offset : [-128, 127]
input_dims – [in] Input (activation) dimensions. Format: [N, H, W, C_IN]
filter_dims – [in] Filter dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions
output_dims – [in] Output tensor dimensions. Format: [N, H, W, C_OUT]
- Returns
The function returns required buffer size(bytes)
-
int32_t riscv_convolve_wrapper_s4_get_buffer_size_dsp(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get the required buffer size for riscv_convolve_wrapper_s4 for processors with DSP extension. Refer to riscv_convolve_wrapper_s4_get_buffer_size() for function argument details.
Note
Intended for compilation on Host. If compiling for an Riscv target, use riscv_convolve_wrapper_s4_get_buffer_size().
-
int32_t riscv_convolve_s8_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
Get the required buffer size for s8 convolution function.
- Parameters
input_dims – [in] Input (activation) tensor dimensions. Format: [N, H, W, C_IN]
filter_dims – [in] Filter tensor dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions
- Returns
The function returns required buffer size(bytes)
-
int32_t riscv_convolve_1_x_n_s8_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get the required additional buffer size for 1xn convolution.
- Parameters
conv_params – [in] Convolution parameters (e.g. strides, dilations, pads,…). Range of conv_params->input_offset : [-127, 128] Range of conv_params->output_offset : [-128, 127]
input_dims – [in] Input (activation) tensor dimensions. Format: [N, H, W, C_IN]
filter_dims – [in] Filter tensor dimensions. Format: [C_OUT, 1, WK, C_IN] where WK is the horizontal spatial filter dimension
output_dims – [in] Output tensor dimensions. Format: [N, H, W, C_OUT]
- Returns
The function returns required buffer size(bytes)
-
int32_t riscv_convolve_1x1_s8_fast_get_buffer_size(const nmsis_nn_dims *input_dims)
Get the required buffer size for riscv_convolve_1x1_s8_fast.
- Parameters
input_dims – [in] Input (activation) dimensions
- Returns
The function returns the required buffer size in bytes
-
int32_t riscv_convolve_wrapper_s8_get_buffer_size(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get the required buffer size for riscv_convolve_wrapper_s8.
- Parameters
conv_params – [in] Convolution parameters (e.g. strides, dilations, pads,…). Range of conv_params->input_offset : [-127, 128] Range of conv_params->output_offset : [-128, 127]
input_dims – [in] Input (activation) dimensions. Format: [N, H, W, C_IN]
filter_dims – [in] Filter dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions
output_dims – [in] Output tensor dimensions. Format: [N, H, W, C_OUT]
- Returns
The function returns required buffer size(bytes)
-
int32_t riscv_convolve_wrapper_s8_get_buffer_size_dsp(const nmsis_nn_conv_params *conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get the required buffer size for riscv_convolve_wrapper_s8 for processors with DSP extension. Refer to riscv_convolve_wrapper_s8_get_buffer_size() for function argument details.
Note
Intended for compilation on Host. If compiling for an Riscv target, use riscv_convolve_wrapper_s8_get_buffer_size().
- __STATIC_INLINE int32_t riscv_depthwise_conv_fast_s16_get_buffer_size_dsp (const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
-
int32_t riscv_depthwise_conv_fast_s16_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
Get the required buffer size for optimized s16 depthwise convolution function with constraint that in_channel equals out_channel.
- Parameters
input_dims – [in] Input (activation) tensor dimensions. Format: [1, H, W, C_IN] Batch argument N is not used.
filter_dims – [in] Filter tensor dimensions. Format: [1, H, W, C_OUT]
- Returns
The function returns required buffer size in bytes
-
int32_t riscv_depthwise_conv_wrapper_s16_get_buffer_size(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get size of additional buffer required by riscv_depthwise_conv_wrapper_s16()
- Parameters
dw_conv_params – [in] 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
input_dims – [in] Input (activation) tensor dimensions. Format: [H, W, C_IN] Batch argument N is not used and assumed to be 1.
filter_dims – [in] Filter tensor dimensions. Format: [1, H, W, C_OUT]
output_dims – [in] Output tensor dimensions. Format: [1, H, W, C_OUT]
- Returns
Size of additional memory required for optimizations in bytes.
-
int32_t riscv_depthwise_conv_wrapper_s16_get_buffer_size_dsp(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get size of additional buffer required by riscv_depthwise_conv_wrapper_s16() for processors with DSP extension. Refer to riscv_depthwise_conv_wrapper_s16_get_buffer_size() for function argument details.
Note
Intended for compilation on Host. If compiling for an Riscv target, use riscv_depthwise_conv_wrapper_s16_get_buffer_size().
-
int32_t riscv_depthwise_conv_s4_opt_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
Get the required buffer size for optimized s4 depthwise convolution function with constraint that in_channel equals out_channel.
- Parameters
input_dims – [in] Input (activation) tensor dimensions. Format: [1, H, W, C_IN] Batch argument N is not used.
filter_dims – [in] Filter tensor dimensions. Format: [1, H, W, C_OUT]
- Returns
The function returns required buffer size in bytes
-
int32_t riscv_depthwise_conv_wrapper_s4_get_buffer_size(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get size of additional buffer required by riscv_depthwise_conv_wrapper_s4()
- Parameters
dw_conv_params – [in] 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]
input_dims – [in] Input (activation) tensor dimensions. Format: [H, W, C_IN] Batch argument N is not used and assumed to be 1.
filter_dims – [in] Filter tensor dimensions. Format: [1, H, W, C_OUT]
output_dims – [in] Output tensor dimensions. Format: [1, H, W, C_OUT]
- Returns
Size of additional memory required for optimizations in bytes.
-
int32_t riscv_depthwise_conv_wrapper_s4_get_buffer_size_dsp(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get size of additional buffer required by riscv_depthwise_conv_wrapper_s4() for processors with DSP extension. Refer to riscv_depthwise_conv_wrapper_s4_get_buffer_size() for function argument details.
Note
Intended for compilation on Host. If compiling for an Riscv target, use riscv_depthwise_conv_wrapper_s4_get_buffer_size().
-
int32_t riscv_depthwise_conv_s8_opt_get_buffer_size_dsp(const nmsis_nn_dims *input_dims, const nmsis_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 riscv_depthwise_conv_s8_opt_get_buffer_size() for function argument details.
Note
Intended for compilation on Host. If compiling for an Riscv target, use riscv_depthwise_conv_s8_opt_get_buffer_size(). Note also this is a support function, so not recommended to call directly even on Host.
-
int32_t riscv_depthwise_conv_s8_opt_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)
Get the required buffer size for optimized s8 depthwise convolution function with constraint that in_channel equals out_channel.
- Parameters
input_dims – [in] Input (activation) tensor dimensions. Format: [1, H, W, C_IN] Batch argument N is not used.
filter_dims – [in] Filter tensor dimensions. Format: [1, H, W, C_OUT]
- Returns
The function returns required buffer size in bytes
-
int32_t riscv_depthwise_conv_wrapper_s8_get_buffer_size(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get size of additional buffer required by riscv_depthwise_conv_wrapper_s8()
- Parameters
dw_conv_params – [in] 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]
input_dims – [in] Input (activation) tensor dimensions. Format: [H, W, C_IN] Batch argument N is not used and assumed to be 1.
filter_dims – [in] Filter tensor dimensions. Format: [1, H, W, C_OUT]
output_dims – [in] Output tensor dimensions. Format: [1, H, W, C_OUT]
- Returns
Size of additional memory required for optimizations in bytes.
-
int32_t riscv_depthwise_conv_wrapper_s8_get_buffer_size_dsp(const nmsis_nn_dw_conv_params *dw_conv_params, const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get size of additional buffer required by riscv_depthwise_conv_wrapper_s8() for processors with DSP extension. Refer to riscv_depthwise_conv_wrapper_s8_get_buffer_size() for function argument details.
Note
Intended for compilation on Host. If compiling for an Riscv target, use riscv_depthwise_conv_wrapper_s8_get_buffer_size().
-
int32_t riscv_transpose_conv_s8_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *out_dims)
Get the required buffer size for s8 transpose conv function.
- Parameters
input_dims – [in] Input (activation) tensor dimensions. Format: [N, H, W, C_IN]
filter_dims – [in] Filter tensor dimensions. Format: [C_OUT, HK, WK, C_IN] where HK and WK are the spatial filter dimensions
out_dims – [in] Output tensor dimensions. Format: [N, H, W, C_OUT]
- Returns
The function returns required buffer size(bytes)
-
int32_t riscv_transpose_conv_s8_get_buffer_size_dsp(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims, const nmsis_nn_dims *output_dims)
Get size of additional buffer required by riscv_transpose_conv_s8() for processors with DSP extension. Refer to riscv_transpose_conv_s8_get_buffer_size() for function argument details.
Note
Intended for compilation on Host. If compiling for an Riscv target, use riscv_transpose_conv_s8_get_buffer_size().
-
int32_t riscv_convolve_s16_get_buffer_size(const nmsis_nn_dims *input_dims, const nmsis_nn_dims *filter_dims)