当前位置: 首页 > news >正文

CANN/pypto argsort排序索引

# pypto.argsort

【免费下载链接】pyptoPyPTO(发音: pai p-t-o):Parallel Tensor/Tile Operation编程范式。项目地址: https://gitcode.com/cann/pypto

产品支持情况

产品是否支持
Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品

功能说明

获取输入在指定轴按照升序或者降序进行排序后的索引。

函数原型

argsort(input: Tensor, dim: Optional[int]=None, descending: bool=True) -> Tensor

参数说明

参数名输入/输出说明
input输入源操作数。
支持的类型为:Tensor。
Tensor支持的数据类型为:DT_FP32,DT_FP16。
不支持空Tensor;Shape仅支持1-4维;Shape Size不大于2147483647(即INT32_MAX)。
dim输入指定排序的维度。
支持1-4轴。
descending输入如果为True,按降序返回索引。如果为False,按升序返回索引。

返回值说明

返回一个Tensor,为输入按照descending在dim轴进行排序后的索引。

约束说明

  1. 当前不支持ViewShape在dim轴切分,即要求ViewShape[dim] = InputShape[dim]。
  2. 当前仅支持TileShape在dim轴上为32的倍数,即要求TileShape[dim] % 32 = 0。
  3. 当Shape较大场景 $(\frac{TileShape\ Size}{TileShape[dim]} * CeilAlign(ViewShape[dim], 32) >= 6KB)$ 时, 排序轴的Tile切分数量小于128。
  4. 对于四维输入,暂不支持在第0轴上进行排序。
  5. 排序时遇到相同值时,采用稳定排序返回对应的索引。

调用示例

TileShape设置示例

说明:调用该operation接口前,应通过set_vec_tile_shapes设置TileShape。

TileShape维度应和输入input一致。

如输入input shape为[m, n, p],dim为2,descending为True,输出为[m, n, p],TileShape设置为[m1, n1, p1],则m1, n1, p1分别用于切分m, n, p轴。

pypto.set_vec_tile_shapes(4, 16, 32)

接口调用示例

x = pypto.tensor([2, 3], pypto.DT_FP32) y = pypto.argsort(x, -1, True)

结果示例如下:

输入数据x: [[1.0 2.0 3.0], [1.0 2.0 3.0]] 输出数据y: [[2, 1, 0], [2, 1, 0]]

【免费下载链接】pyptoPyPTO(发音: pai p-t-o):Parallel Tensor/Tile Operation编程范式。项目地址: https://gitcode.com/cann/pypto

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.jsqmd.com/news/786609/

相关文章:

  • ChatLLM.cpp:纯C++本地大模型推理引擎部署与实战指南
  • 毕业两年了,25岁转行网络安全来得及吗?网络运维安全培训+就业(职等你来)
  • Modern-Cursors-v2:现代化鼠标光标主题的设计、安装与深度定制指南
  • Tracciatto:为现代Ruby项目设计的VS Code深度调试扩展
  • 哪里可以找到 Linux 简介教程?
  • 抽蓄电站加劲环压力明管结构可靠性智能优化【附模型】
  • ComfyUI-Bridge:AI绘画工作流转换工具,实现SD WebUI到ComfyUI的无缝迁移
  • 基于Zilliz-Skill框架构建AI智能体技能:从原理到工程实践
  • FastbootEnhance:Windows上最直观的Fastboot工具箱,告别命令行恐惧症
  • claud code 学习记录
  • CoolRunner-II CPLD低功耗设计与DataGATE技术解析
  • 2026届学术党必备的六大AI写作助手推荐榜单
  • ARM与Thumb指令集架构解析及优化实践
  • 告别“凭感觉编程”:AI应用开发的工程化避坑指南与OpenSpec实践
  • 技术分享的内卷化:从知识传播到表演竞赛的异化
  • 从零构建文档问答技能:RAG架构、LangChain实践与OpenClaw集成
  • 信息安全工程师-病毒、木马、蠕虫技术原理与防御基础
  • cann/ops-nn ELU梯度V2算子
  • VSCode光标增强插件开发:从CSS注入到动态效果实现
  • 2026届毕业生推荐的AI科研平台实测分析
  • 汽车电子功能安全验证中的误差传播理论与应用
  • 2026年卡通IP雕塑选购指南:破解材质缺陷与工艺痛点,实测验证
  • 如何快速安装大气层系统:Switch破解的终极完整指南
  • 基于多模态大模型的电影智能问答系统:从原理到实践
  • CUDA算法优化实战:从内存访问到指令级性能提升全解析
  • Allegro软件许可浪费?自动释放,版图设计告别卡顿
  • OpenClaw微信客服插件:代理服务+WSS模式,快速接入公众号与企业微信
  • 2026年热门的纺丝喷丝板稳定供货厂家推荐 - 品牌宣传支持者
  • 电路中 Filter 和 Matching 完整详解
  • Ollama MCP Server:为AI助手扩展本地大模型能力的开源桥梁