news 2026/5/9 15:12:14

CANN/catlass变更日志

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/catlass变更日志

CHANGELOG

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

CATLASS 1.X

CATLASS 1.5.0

  • 关键特性
    • 新增支持Ascend950架构与配套底层模板组件
    • TLA增强:引入origin_shape,新增TileViewMakeTensorLike、Tensoroperator()等接口,并完善布局与张量表达
    • Matmul 泛化工程扩展:支持W8A8 Per-Token + Per-Channel动态量化路径、分批编译,并补充相关设计文档
    • FixPipe能力延伸:新增/完善 Matmul FixPipe 优化与GMM + FixPipe + Dequant等组合模板与样例
    • 适配CANN 9.0.0.beta2;在使用g++与毕昇工具链链接时,需显式链接profapi(编译器非兼容性变更说明)
    • 新增单元测试(unittest)与CI对 Ascend950 的适配
  • 更多样例
    • Ascend950 基础 Matmul
    • Ascend950 Matmul FixPipe 优化
    • Ascend950 Grouped Matmul SliceM Per-Token Dequant
    • Ascend950 Grouped Matmul Per-Tensor & Per-Channel Dequant
    • Ascend950 Flash Attention 推理
    • Ascend950 基础 Matmul GEMV
    • Ascend950 Quant Matmul Per-Group & Per-Block TLA(Per-Group × Per-Block 量化组合)
    • Quant Optimized Matmul TLA
    • Quant Matmul Full LoadA TLA
    • Strided Batched Matmul TLA
    • Matmul 泛化工程:动态 W8A8 Per-Token 量化
  • 工具支持
    • shared_lib 输出产物增加soname,Python 扩展依赖的共享库切换为带版本信息的.so
    • Python 扩展 支持build.sh编译选项传入,并支持异步模式;更新设备侧取指针等接入方式
    • msTuner_CATLASS 扩展 GEMM 配置与搜索空间;MatmulGelu 样例接入寻优示例
  • 文档资料
    • 文档目录与资源路径调整(如figures目录),并做低错与内容修订
    • 泛化工程补充MultiCoreSplitKStreamK单核切 K等相关说明文档
    • 修复 ascendc_dump 文档 中的错误表述
  • Bugfix&优化
    • 修复 TLAOriginShapeFlash Attention Golden等相关问题;完善 Ascend950 FA 的 Block/Epilogue 等实现路径
    • 调整 CopyGmToL1 中blockLen计算逻辑,无需再为对齐C0_NUM_PER_FRACTAL做不必要向上取整
    • Nan 专项:在exp11等路径为Ki=0场景补充清零,避免脏数据影响模型精度
    • 修复CopyL0CToDstQuantMode等问题;Ascend950 架构标识由3501更正为3510
    • 修复间接头文件引用、License 注释与多处文档笔误;持续消除代码规范告警与风格清理

CATLASS 1.4.0

  • 关键特性
    • Matmul泛化工程新增
      • LocalPaddingCPaddingCommonMatmul模板,使用局部workSpace对C矩阵做padding
  • 更多样例
    • StreamK Matmul算子
    • W4A4低精度Matmul算子
    • Matmul算子L2层级切分+错位分核
    • Sparse Matmul算子
  • 工具支持
    • 增加shared_lib使用示例
  • 文档资料
    • 新增单核切K优化Matmul算子的详设文档,介绍单核切K矩阵乘的设计思路和代码拆解
    • 新增主页Matmul/GroupedMatmul算子性能展示数据
    • msdebug文档新增驱动支持检查
  • Bugfix&优化
    • 优化grouped_matmul_slice_m样例支持groupList分段式输入
    • BlockMmad增加TileShape的32B对齐约束
    • 修复w4a8 matmul样例构造数据长度问题
    • Matmul泛化工程支持Stride大于Shape的场景
    • msTuner_CATLASS工具支持quant Matmul做tiling寻优
    • 修复device侧对cmath函数的不规范使用
    • 修复MatmulSilu精度问题和命名错误
    • 修复cast_int4_to_int8组件的Vector同步问题
    • 修复w8a16 Matmul算子half类型使用问题
    • 修复单核切K Matmul算子在RemovePaddingNDAndCastC为空时的逻辑问题

CATLASS 1.3.0

  • 关键特性
    • CMake最低版本要求从3.22降至3.16
    • 支持FixPipe随路量化
    • Matmul泛化工程新增
      • PaddingCommonMatmul
      • SmallMatmul
      • PaddingMultiCoreSplitkMatmul
      • PaddingStreamkMatmul
      • 单核切K系列模板
      • 动态Swizzle
  • 更多样例
    • INT4类型反量化Matmul算子
    • 2D卷积算子
    • 单核切K优化Matmul算子
  • 工具支持
    • 新增msOpGen和接入文档
    • msTuner_CATLASS工具新增
      • GroupedMatmulSliceM算子
      • OptimizedMatmul算子
  • 文档资料
    • 新增INT8类型反量化GroupedMatmul算子的详设文档,介绍groupMatmul+后处理类型的算子的设计思路和代码拆解
    • 新增矩阵乘模板总结文档,介绍模板库已有的Matmul模板设计
    • 新增CommonMatmul说明文档,介绍泛化Matmul工程中的基础模板
  • Bugfix&优化
    • 修复Flash Attention推理算子在softmax拷贝mask时引入的内存问题
    • 修复文档错误
      • catlass_optimize_guidance.md
      • api.md
      • quickstart.md
      • tutorials.md
    • Matmul泛化工程更新
      • 修改TilingParams读取方式增强可读性
      • 优化原有的Splitk ReduceAdd,UB空间利用更充分
      • 新增CMakeLists.txt中对python环境的判断
    • 修复OptimizedMatmul算子在kernel里没有支持PADDING_NZ的问题
    • 优化重构FP8类型反量化Matmul算子,使其更符合Prologue范式
    • 修复MatmulBias算子精度问题并增加对bf16的校验拦截
    • 优化仿真的编译逻辑以及在A3环境下的编译问题,现在编译simulator模式时逻辑与上板模式相同
    • msTuner_CATLASS工具更新
      • 新增接口替换、非法字符、groupCount最大值检查等安全校验
      • 修复下发部分算子时默认传入ffts_addr被拦截的问题
    • 更改默认的跨核标志位可连续置位次数,避免超过次数后引发的系统卡死问题

CATLASS 1.2.0

  • 关键特性

    • 算子编译时支持传入计算平台架构
    • 新增Matmul泛化工程示例
      • 自动依照特征尺寸确定Tiling参数
      • 可在预设的算子模板中择优选取
  • 更多样例

    • Flash Attention推理算子
    • 3D卷积算子
    • A矩阵全加载Matmul算子
    • 小矩阵优化Matmul算子
    • MatmulRelu算子
    • MatmulGelu算子
    • MatmulSilu算子
    • FP8类型反量化Matmul算子
    • INT8类型反量化Matmul算子
  • 工具支持

    • 更新Python调用接口内容
      • 调整工程组织结构
      • 支持转置情况
    • 新增msTuner_CATLASS工具,用于Tiling自动寻优,在搜索空间内全量运行并获取性能数据
    • 支持使能msSanitizer地址消毒工具(编译选项加入--enable_mssanitizer
  • 文档资料

    • 新增catlass_optimize_guidance.md文档,介绍CATLASS赋能下Gemm类算子常用的调优方式
  • Bugfix&优化

    • 优化OptimizedMatmul算子实现,支持任意Padding方式组合
    • 修复ASCEND_RT_VISIBLE_DEVICES环境变量使能下,msTuner_CATLASS工具无法取得实际运行DeviceId的问题
    • 修复PFA算子样例在单行数据场景下Set/Wait错配的异常情形
    • 修复OptimizedMatmul算子样例计算Workspace大小出错
    • 隔离使能AscendC::DumpAscendC::print功能的代码段
    • 修复GroupedMatmulSliceK算子在Ki=0特例时的输出清零行为,并将真值比较逻辑调整为全尺寸(M,N,K)比较
    • 修改performance_tools.mdtutorials.md等文档中的错误

CATLASS 1.1.0

  • 关键特性

    • 提供Python调用CATLASS算子的工程组件
      • 可编译pybind扩展及PyTorch扩展件
    • 支持算子仿真运行(编译选项启用--simulator
    • 编译过程适配毕昇编译器(bisheng)
  • 更多样例

    • 带偏置的MatmulBias算子
    • 预加载(Preload)优化Matmul算子 (科大讯飞联创贡献)
    • K轴切分(Split-K)优化Matmul算子 (科大讯飞联创贡献)
  • 工具支持

    • 支持AscendC::DumpAscendC::printf进行打印调试
      • 编译选项中加入--enable_ascendc_dump--enable_print以启用上述功能
      • 请参阅文档:ascendc_dumpprint
  • 文档资料

    • 新增tutorials快速上手示例
    • 新增利用msProf工具进行算子性能调测的文档:msProf性能调测
  • Bugfix&优化

    • 优化Kernel层AIC程序,添加PIPE_ALL避免整网影响
    • 优化OptimizedMatmul算子实现,在非必要Padding场景下不启动AIV核
    • 修复Block层预加载nextBlock时的错误
    • 隔离Kernel侧AscendCinline定义,避免异构编程时无法使用部分标准库
    • 修改l2offset设置的重定义问题

CATLASS 1.0.0

  • CATLASS模板库正式开源发布

  • 关键特性

    • 提供Kernel、Block、Tile、Basic分层算子开发能力
  • 样例参考

    • 提供包括基础Matmul及各种不同的优化策略在内的算子样例

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

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

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

50.人工智能实战:大模型系统如何做 CI/CD?从前期发现“Prompt 改坏了”到自动评测、发布门禁与回滚

人工智能实战:大模型系统如何做 CI/CD?从前期发现“Prompt 改坏了”到自动评测、发布门禁与回滚 一、问题场景:代码没改,Prompt 改了,线上却出事故了 传统软件系统里,CI/CD 通常围绕代码: 代码提交↓ 单元测试↓ 构建镜像↓ 部署但大模型系统不一样。 很多关键行为来…

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

3篇3章7节:Obsidian 笔记的导出、备份和主题设置

Obsidian作为当下热门的本地优先笔记工具,凭借数据自主可控、自由度高、插件丰富、界面简洁的优势,成为学习、办公、知识整理的首选工具。但绝大多数新手用户在使用过程中,常会遇到各类实操难题:精心排版的笔记导出后格式错乱、无…

作者头像 李华
网站建设 2026/5/9 15:05:58

CANN学习中心安全声明

安全声明 【免费下载链接】cann-learning-hub CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。 项目地址: https://gitcode.com/cann/cann-learning-hub 运行用户建议 基于安全…

作者头像 李华
网站建设 2026/5/9 15:05:27

基于Transformer与CGAN的太赫兹石墨烯超表面智能逆向设计

1. 项目概述:当AI遇见超材料设计太赫兹波段,这个介于微波和红外之间的“最后一片处女地”,在通信、成像和传感领域有着巨大的应用潜力。而石墨烯超表面,作为一种由亚波长石墨烯单元构成的二维人工结构,能够通过其独特的…

作者头像 李华
网站建设 2026/5/9 15:03:30

Java——内存分析工具jol-core

内存分析工具jol-core1、简单使用2、核心API与常用类3、输出结果&#xff08;表格&#xff09;字段详解4、查看数组内存布局4.1、一维数组4.2、不同基础类型数组4.3、二维数组5、分析内存泄露1、简单使用 引入依赖&#xff1a; <dependency><groupId>org.openjdk…

作者头像 李华
网站建设 2026/5/9 15:01:32

基于多层级注意力机制的群体行为识别:在特殊教育场景下的工程实践

1. 项目概述&#xff1a;当计算机视觉走进特殊教育课堂 作为一名长期关注AI技术落地的从业者&#xff0c;我一直在寻找那些能将前沿算法与真实社会需求紧密结合的领域。自闭症谱系障碍&#xff08;ASD&#xff09;儿童的行为干预与评估&#xff0c;就是这样一个充满挑战又极具价…

作者头像 李华