news 2026/5/9 17:13:31

CANN/pyasc带转置数据加载API文档

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/pyasc带转置数据加载API文档

asc.language.basic.load_data_with_transpose

【免费下载链接】pyasc本项目为Python用户提供算子编程接口,支持在昇腾AI处理器上加速计算,接口与Ascend C一一对应并遵守Python原生语法。项目地址: https://gitcode.com/cann/pyasc

asc.language.basic.load_data_with_transpose(dst: LocalTensor, src: LocalTensor, params: LoadData2dTransposeParams) → None

asc.language.basic.load_data_with_transpose(dst: LocalTensor, src: LocalTensor, params: LoadData2dTransposeParamsV2) → None

该接口实现带转置的2D格式数据从A1/B1到A2/B2的加载。

对应的Ascend C函数原型

template <typename T> __aicore__ inline void LoadDataWithTranspose(const LocalTensor<T>& dst, const LocalTensor<T>& src, const LoadData2dTransposeParams& loadDataParams)
template <typename T> __aicore__ inline void LoadDataWithTranspose(const LocalTensor<T>& dst, const LocalTensor<T>& src, const LoadData2dTransposeParamsV2& loadDataParams)

参数说明

  • dst:目的操作数,类型为 LocalTensor。
    • 用于接收转置后的二维数据。
    • 存储位置需属于 VECIN / VECCALC / VECOUT 中的一种。
    • 起始地址需满足 32 字节对齐要求。
  • src:源操作数,类型为 LocalTensor。
    • 作为 2D 输入块的提供者。
    • 仅支持 Local → Local(A1/B1 → A2/B2),不支持 GlobalTensor。
    • 数据类型必须与 dst 一致。
  • params:二维转置加载参数,类型为 LoadData2dTransposeParams 或 LoadData2dTransposeParamsV2。
    • LoadData2dTransposeParams 结构体
      • start_index:方块矩阵ID,搬运起始位置为源操作数中第几个方块矩阵(0 为源操作数中第1个方块矩阵)。取值范围:start_index∈[0, 65535] 。默认为0。
      • repeat_times:迭代次数,取值范围:repeat_times∈[0, 255]。默认为0。
      • src_stride:相邻迭代间,源操作数前一个分形与后一个分形起始地址的间隔。这里的单位实际上是拼接后的方块矩阵的大小。取值范围:src_stride∈[0, 65535]。默认为0。
      • dst_gap:相邻迭代间,目的操作数前一个迭代第一个分形的结束地址到下一个迭代第一个分形起始地址的间隔,单位:512B。取值范围:dst_gap∈[0, 65535]。默认为0。
      • dst_frac_gap:每个迭代内目的操作数转置前一个分形结束地址与后一个分形起始地址的间隔,单位:512B,仅在数据类型为float/int32_t/uint32_t/uint8_t/int8_t/int4b_t时有效。取值范围:dst_frac_gap∈[0, 65535]。默认为0。
      • addr_mode:预留参数
    • LoadData2dTransposeParamsV2 结构体
      • start_index:方块矩阵ID,搬运起始位置为源操作数中第几个方块矩阵(0 为源操作数中第1个方块矩阵)。取值范围:start_index∈[0, 65535] 。默认为0。
      • repeat_times:迭代次数,取值范围:repeat_times∈[0, 255]。默认为0。
      • src_stride:源操作数步长,取值范围:src_stride∈[0, 65535]。默认为0。
      • dst_gap:目的操作数间隔,取值范围:dst_gap∈[0, 65535]。默认为0。
      • dst_frac_gap:分形间隔,取值范围:dst_frac_gap∈[0, 65535]。默认为0。
      • src_frac_gap:源分形间隔,取值范围:src_frac_gap∈[0, 65535]。默认为0。
      • addr_mode:地址模式,取值范围:addr_mode∈[0, 255]。默认为0。

约束说明

  • repeatTimes 为 0 时表示不执行搬运操作。
  • 开发者需要保证目的操作数转置后的分形没有重叠。
  • 操作数地址对齐要求请参见 《Ascend C算子开发接口》 中的“通用说明和约束-通用地址对齐约束”。
  • repeat_times 为 0 时表示不执行搬运操作。
  • 开发者需要保证目的操作数转置后的分形没有重叠。
  • 操作数地址对齐要求请参见 《Ascend C算子开发接口》 中的“通用说明和约束-通用地址对齐约束”。

调用示例

  • 调用示例(V1版本)
    @asc.jit def kernel_load_data_with_transpose(x: asc.GlobalAddress) -> None: x_local = asc.LocalTensor(dtype=asc.float16, pos=asc.TPosition.VECIN, addr=0, tile_size=512) y_local = asc.LocalTensor(dtype=asc.float16, pos=asc.TPosition.VECOUT, addr=0, tile_size=512) params = asc.LoadData2dTransposeParams(0, 4, 0, 0, 0, 0) asc.load_data_with_transpose(y_local, x_local, params)
  • 调用示例(V2版本)
    @asc.jit def kernel_load_data_with_transpose_v2(x: asc.GlobalAddress) -> None: x_local = asc.LocalTensor(dtype=asc.float16, pos=asc.TPosition.VECIN, addr=0, tile_size=512) y_local = asc.LocalTensor(dtype=asc.float16, pos=asc.TPosition.VECOUT, addr=0, tile_size=512) params_v2 = asc.LoadData2dTransposeParamsV2(0, 4, 0, 0, 0, 0, 0) asc.load_data_with_transpose(y_local, x_local, params_v2)

【免费下载链接】pyasc本项目为Python用户提供算子编程接口,支持在昇腾AI处理器上加速计算,接口与Ascend C一一对应并遵守Python原生语法。项目地址: https://gitcode.com/cann/pyasc

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 17:11:36

CANN/metadef获取C0格式值

GetC0Value 【免费下载链接】metadef Ascend Metadata Definition 项目地址: https://gitcode.com/cann/metadef 函数功能 从实际format中解析出C0 format信息。 函数原型 inline int64_t GetC0Value(int32_t format)参数说明 参数 输入/输出 说明 format 输入 实际f…

作者头像 李华
网站建设 2026/5/9 17:10:42

EI会议和SCI会议到底有啥区别?搞懂这些,你的论文投稿不再迷茫

EI会议与SCI会议的核心差异与投稿策略指南 引言&#xff1a;学术出版体系中的两座灯塔 第一次投稿时面对"推荐投EI会议还是SCI期刊&#xff1f;"的审稿意见&#xff0c;很多研究者都会陷入选择困难。去年有位计算机视觉方向的博士生向我展示了他收到的三份审稿意见—…

作者头像 李华
网站建设 2026/5/9 17:09:38

AI赋能移动边缘计算安全:从威胁检测到隐私保护的实战技术解析

1. 项目概述与核心挑战在5G和物联网&#xff08;IoT&#xff09;浪潮的推动下&#xff0c;移动边缘计算&#xff08;MEC&#xff09;已经从一种前沿概念&#xff0c;迅速演变为支撑智能交通、工业4.0、沉浸式AR/VR等实时应用不可或缺的基础设施。简单来说&#xff0c;MEC的核心…

作者头像 李华
网站建设 2026/5/9 17:08:31

AI驱动KOL营销运营套件:从数据筛选到智能复盘的全流程自动化

1. 项目概述&#xff1a;一个为海外KOL营销打造的AI驱动运营套件 如果你正在管理海外市场的KOL&#xff08;关键意见领袖&#xff09;或网红营销活动&#xff0c;那你一定对那种混乱感深有体会。从海量数据中筛选出合适的合作对象&#xff0c;到撰写个性化的合作简报&#xff0…

作者头像 李华
网站建设 2026/5/9 17:07:31

Fathom-DeepResearch:大语言模型的长程信息检索与知识合成技术

1. 项目背景与核心价值去年在处理一个金融领域的知识图谱项目时&#xff0c;我遇到了一个棘手问题&#xff1a;当需要从数百万份研究报告中提取跨5年时间维度的关联信息时&#xff0c;传统检索系统要么返回碎片化结果&#xff0c;要么陷入"语义重复"的泥潭。这正是Fa…

作者头像 李华