sort

Contents

sort#

Sort elements of a tensor in either ascending or descending order

template<typename InputOperator>
__MATX_INLINE__ auto matx::sort(const InputOperator &a, const SortDirection_t dir)#

Sort rows of an operator

Sort rows of an operator using a radix sort. Currently supported types are float, double, ints, and long ints (both signed and unsigned). For a 1D operator, a linear sort is performed. For 2D and above each row of the inner dimensions are batched and sorted separately.

Note

Temporary memory may be used during the sorting process, and about 2N will be allocated, where N is the length of the tensor.

Template Parameters:

InputOperator – Input type

Parameters:
  • a – Input operator

  • dir – Direction to sort (either SORT_DIR_ASC or SORT_DIR_DESC)

Returns:

Operator for sorted tensor

Examples#

// Ascending sort of 1D input
(tmpv = matx::sort(this->t1, SORT_DIR_ASC)).run(this->exec);
// Descending sort of 1D input
(tmpv = matx::sort(this->t1, SORT_DIR_DESC)).run(this->exec);