news 2026/5/9 13:05:35

CANN/pyasc矩阵乘法批处理张量获取

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/pyasc矩阵乘法批处理张量获取

asc.language.adv.Matmul.get_batch_tensor_c

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

Matmul.get_batch_tensor_c(batch_a: int, batch_b: int, en_sequential_write: bool = False, sync: bool = True) → GlobalTensor
Matmul.get_batch_tensor_c(tensor: LocalTensor, batch_a: int, batch_b: int, en_sequential_write: bool = False, sync: bool = True) → None

调用一次get_batch_tensor_c,会获取C矩阵片,该接口可以与iterate_n_batch异步接口配合使用。 用于在调用iterate_n_batch迭代计算后,获取一片std::max(batch_a, batch_b) * singleCoreM * singleCoreN大小的矩阵分片。

对应的Ascend C函数原型

template <bool sync = true> __aicore__ inline GlobalTensor<DstT> GetBatchTensorC(uint32_t batchA, uint32_t batchB, bool enSequentialWrite = false)
template <bool sync = true> __aicore__ inline void GetBatchTensorC(const LocalTensor<DstT>& c, uint32_t batchA, uint32_t batchB, bool enSequentialWrite = false)

参数说明

  • batch_a: 左矩阵的batch数。
  • batch_b: 右矩阵的batch数。
  • en_sequential_write: 该参数预留,开发者无需关注。
  • tensor: C矩阵放置于Local Memory的地址,用于保存矩阵分片。

约束说明

  • 当使能MixDualMaster(双主模式)场景时,即模板参数enableMixDualMaster设置为true,不支持使用该接口。
  • C矩阵片输出到Local Memory,且单核计算的N方向大小single_core_n非32字节对齐的场景,C矩阵的CubeFormat仅支持ND_ALIGN格式,输出C矩阵片时,自动将single_core_n方向上的数据补齐至32字节。

调用示例

for_extent = tiling.a_layout_info_b * tiling.a_layout_info_n * g_lay // tiling.batch_num mm.set_tensor_a(gm_a, is_transpose_a_in) mm.set_tensor_b(gm_b, is_transpose_b_in) if tiling.is_bias: mm.set_bias(gm_bias) mm.iterate_n_batch(for_extent, batch_a, batch_b, False, sync=False) # ...其他计算 for i in range(for_extent): mm.get_batch_tensor_c(tensor=ub_cmatrix, sync=False)

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

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

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

CANN/pyasc双曲余弦API文档

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

作者头像 李华
网站建设 2026/5/9 12:56:51

FedAIoT:物联网联邦学习基准测试框架的设计与实践

1. 项目概述&#xff1a;为什么我们需要一个物联网联邦学习的“标尺”&#xff1f;在物联网&#xff08;IoT&#xff09;和人工智能&#xff08;AI&#xff09;交汇的浪潮中&#xff0c;联邦学习&#xff08;Federated Learning, FL&#xff09;正成为解决数据孤岛与隐私保护难…

作者头像 李华
网站建设 2026/5/9 12:54:51

CANN基础设施OSS信息提取工具常见问题

常见问题 (FAQs) 【免费下载链接】infrastructure 本仓库用于托管CANN社区基础设施团队的公开信息&#xff0c;包括不限于&#xff1a;会议日程&#xff0c;成员信息&#xff0c;服务文档和配置等信息 项目地址: https://gitcode.com/cann/infrastructure 本文档收集了 …

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

ARM PrimeCell外设开发与AMBA总线验证全流程解析

1. ARM PrimeCell通用外设开发与验证全流程解析在嵌入式系统开发领域&#xff0c;AMBA总线架构已成为事实上的行业标准。作为ARM公司推出的PrimeCell系列外设IP核&#xff0c;其开发与验证流程对于SoC设计至关重要。本文将基于实际项目经验&#xff0c;详细剖析PrimeCell外设从…

作者头像 李华
网站建设 2026/5/9 12:49:11

工业互联网(IIoT):将工厂车间代码化的巨大蓝海

当车间变成代码&#xff0c;测试的边界被重新定义对于软件测试从业者而言&#xff0c;“被测对象”长期以来主要指运行在服务器、桌面或移动端的应用程序。然而&#xff0c;一场静默的革命正在发生&#xff1a;工业互联网&#xff08;Industrial Internet of Things&#xff0c…

作者头像 李华