# Reduction and comparison

Argmin/argmax, min/max reductions, comparisons, means, vector sums, and where. 40 functions, declared in 2 modules.

| Function | Summary | Module |
| --- | --- | --- |
| [`arm_argmax_f16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_argmax_f16) | Returns the first maximum's axis-relative INT32 index for a f16 tensor. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_argmax_f32`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_argmax_f32) | Returns the first maximum's axis-relative INT32 index for a f32 tensor. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_argmax_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_argmax_s16) | Compute ArgMax indices of an s16 tensor along a specific axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_argmax_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_argmax_s8) | Compute ArgMax indices of an s8 tensor along a specific axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_argmin_f16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_argmin_f16) | Returns the first minimum's axis-relative INT32 index for a f16 tensor. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_argmin_f32`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_argmin_f32) | Returns the first minimum's axis-relative INT32 index for a f32 tensor. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_argmin_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_argmin_s16) | Compute ArgMin indices of an s16 tensor along a specific axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_argmin_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_argmin_s8) | Compute ArgMin indices of an s8 tensor along a specific axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_comparison_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_comparison_s16) | s16 elementwise comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_comparison_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_comparison_s8) | s8 elementwise comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_equal_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_equal_s16) | s16 elementwise equality comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_equal_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_equal_s8) | s8 elementwise equality comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_greater_equal_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_greater_equal_s16) | s16 elementwise greater-or-equal comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_greater_equal_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_greater_equal_s8) | s8 elementwise greater-or-equal comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_greater_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_greater_s16) | s16 elementwise greater-than comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_greater_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_greater_s8) | s8 elementwise greater-than comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_less_equal_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_less_equal_s16) | s16 elementwise less-or-equal comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_less_equal_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_less_equal_s8) | s8 elementwise less-or-equal comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_less_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_less_s16) | s16 elementwise less-than comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_less_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_less_s8) | s8 elementwise less-than comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_mean_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_mean_s16) | Computes the mean of the input tensor along the specified axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_mean_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_mean_s8) | Computes the mean of the input tensor along the specified axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_nn_mean_f16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_nn_mean_f16) | Computes the mean of a float16 tensor along the specified axes. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_nn_mean_f32`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_nn_mean_f32) | Computes the mean of a float32 tensor along the specified axes. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_not_equal_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_not_equal_s16) | s16 elementwise inequality comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_not_equal_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_not_equal_s8) | s8 elementwise inequality comparison with support for broadcasting. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_reduce_max_f16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_reduce_max_f16) | Reduces a f16 NHWC tensor to its maximum along a binary axis mask. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_reduce_max_f32`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_reduce_max_f32) | Reduces a f32 NHWC tensor to its maximum along a binary axis mask. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_reduce_max_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_reduce_max_s16) | Computes the max of the input tensor along the specified axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_reduce_max_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_reduce_max_s8) | Computes the max of the input tensor along the specified axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_reduce_min_f16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_reduce_min_f16) | Reduces a f16 NHWC tensor to its minimum along a binary axis mask. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_reduce_min_f32`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_reduce_min_f32) | Reduces a f32 NHWC tensor to its minimum along a binary axis mask. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_reduce_min_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_reduce_min_s16) | Computes the min of the input tensor along the specified axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_reduce_min_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_reduce_min_s8) | Computes the min of the input tensor along the specified axis. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_reduce_sum_f16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_reduce_sum_f16) | Computes the sum of the input tensor along the specified axes. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_reduce_sum_f32`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/#arm_reduce_sum_f32) | Computes the sum of the input tensor along the specified axes. | [Reduction Functions](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/reduction/) |
| [`arm_vector_sum_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_vector_sum_s8) | Calculate the sum of each row in vectordata, multiply by lhsoffset and optionally add s32 biasdata. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_vector_sum_s8_s64`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_vector_sum_s8_s64) | Calculate the sum of each row in vectordata, multiply by lhsoffset and optionally add s64 biasdata. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_where_s16`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_where_s16) | WHERE operator: return coordinates of non-zero elements in condition (int16). | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |
| [`arm_where_s8`](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/#arm_where_s8) | WHERE operator: return coordinates of non-zero elements in condition. | [arm_nnfunctions.h](https://ambiqai.github.io/ns-cmsis-nn/reference/api/heliacore/arm_nnfunctions/) |

[All heliaCORE functions in one page](https://ambiqai.github.io/ns-cmsis-nn/reference/api/)
