Function arm_batch_matmul_s8

Function Documentation

arm_cmsis_nn_status arm_batch_matmul_s8(const cmsis_nn_context *ctx, const cmsis_nn_bmm_params *bmm_params, const cmsis_nn_per_tensor_quant_params *quant_params, const cmsis_nn_dims *input_lhs_dims, const int8_t *input_lhs, const cmsis_nn_dims *input_rhs_dims, const int8_t *input_rhs, const cmsis_nn_dims *output_dims, int8_t *output)

Batch matmul function with 8 bit input and output.

  1. Supported framework: TensorFlow Lite Micro

  2. Performs row * row matrix multiplication with the RHS transposed.

Parameters:
  • ctx[in] Temporary scratch buffer The caller is expected to clear the buffer, if applicable, for security reasons. Optional function arm_fully_connected_s8_get_buffer_size() provides the buffer size if an additional buffer is required.

  • bmm_params[in] Batch matmul Parameters Adjoint flags are currently unused.

  • quant_params[in] Quantization parameters

  • input_lhs_dims[in] Input lhs tensor dimensions. This should be NHWC where lhs C = rhs C

  • input_lhs[in] Pointer to input tensor

  • input_rhs_dims[in] Input lhs tensor dimensions. This is expected to be transposed so should be NHWC where lhs C = rhs C

  • input_rhs[in] Pointer to transposed input tensor

  • output_dims[in] Output tensor dimensions

  • output[out] Pointer to the output tensor

Returns:

The function returns ARM_CMSIS_NN_SUCCESS