CANN/catlass卷积L1到L0B搬运TLA
2026/5/31 22:54:35 网站建设 项目流程

CopyL1ToL0BTla

【免费下载链接】catlass本项目是CANN的算子模板库,提供NPU上高性能矩阵乘及其相关融合类算子模板样例。项目地址: https://gitcode.com/cann/catlass

代码位置

[TOC]

功能说明

CopyL1ToL0BTla实现 Conv 场景下将 Filter 数据从 L1 搬运到 L0B 的 TLA 风格版本。

  • 适用范围:AtlasA2、Ascend950
  • 风格:TLA

模板原型

template <class Element> struct CopyL1ToL0BTla;
模板参数说明
Element元素类型,如half

调用接口

template <class TensorDst, class TensorSrc> void operator()( TensorDst const &dstTensor, // nZ 格式 TensorSrc const &srcTensor // CI1KHKWCOCI0 格式 )

调用示例

#include "catlass/conv/tile/atlasa2/copy_l1_to_l0b.hpp" using namespace Catlass::Conv::Tile; using Element = half; constexpr uint32_t Cin1 = 4, Kh = 3, Kw = 3, Cout = 64, C0 = 16; auto layoutSrc = tla::MakeLayout<Element, layout::CI1KHKWCOCI0>(Cin1, Kh, Kw, Cout, C0); auto layoutDst = tla::MakeLayout<Element, layout::nZ>(Cin1 * Kh * Kw, Cout); AscendC::LocalTensor<Element> srcData, dstData; auto srcTensor = tla::MakeTensor(srcData, layoutSrc, Arch::PositionL1{}); auto dstTensor = tla::MakeTensor(dstData, layoutDst, Arch::PositionL0B{}); CopyL1ToL0BTla<Element> copyOp; copyOp(dstTensor, srcTensor);

【免费下载链接】catlass本项目是CANN的算子模板库,提供NPU上高性能矩阵乘及其相关融合类算子模板样例。项目地址: https://gitcode.com/cann/catlass

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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询