code: def argsort_thrust(
      data, axis=-1, is_ascend=1, dtype="float32", ret_type="indices"
  ):
      """Performs sorting along the given axis and returns an array of indices
      having same shape as an input array that index data in sorted order.
  
      Parameters
      ----------
      data: tvm.te.Tensor
          The input array.
  
      axis : int, optional
          Axis long which to sort the input tensor.
  
      is_ascend : boolean, optional
          Whether to sort in ascending or descending order.
  
      dtype : string, optional
          DType of the output indices.
  
      ret_type : string, optional
          The return type [both, indices].
          "both": return both sorted data and indices.
          "indices": return sorted indices only.
  
      Returns
      -------
      out : tvm.te.Tensor
          The output of this function.
      """
      return topk_thrust(data, 0, axis, ret_type, is_ascend, dtype)
  
imports: import tvm
  from tvm import te
  from .injective import schedule_injective_from_existing
  from ..transform import strided_slice, transpose
  from ..None import tag
  from ..utils import ceil_div, swap
  from ..math import cast, ceil_log2
label_desc: Use image node_id 11 for calling a global function with example usage: argsort_thrust(data, axis, is_ascend, dtype, ret_type) and returns: topk_thrust