文件最后提交记录最后更新时间
适配CANN 9.0.0.beta2 Co-authored-by: yuantao_<taoyuan18@huawei.com> # message auto-generated for no-merge-commit merge: !530 merge cmake_adapt_900b2 into master 适配CANN 9.0.0.beta2 Created-by: yuantao_ Commit-by: yuantao;yuantao_ Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 1. 适配b2多出来的libunified_dlog.so 2. 适配msopgen的新实现 3. 补充新版本对应文档 4. 修正一处文档错误 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> ## 原因 <!--说明此次改动的目的、解决的问题等,应与类型标签匹配 --> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/catlass!5302 个月前
add matmul_fixpipe_opti Co-authored-by: chen_xu0513<chenxu210@huawei.com> # message auto-generated for no-merge-commit merge: !507 merge master into master add matmul_fixpipe_opti Created-by: chen_xu0513 Commit-by: chen_xu0513 Merged-by: cann-robot Description: ## 描述 该算子每完成一个基本块的计算,结果数据即通过Fixpipe搬出到UB上。当启用双目标模式控制(dualDstCtrl)时,计算结果矩阵会被分成两部分,并行写入两个Vector核(一个Cube核对应两个Vector核)的专属UB中。每个Vector核的UB支持独立开启Double Buffer以加速流水效率。<!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> ## 原因 <!--说明此次改动的目的、解决的问题等,应与类型标签匹配 --> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/catlass!5072 个月前
[bugfix]文档低错整改以及images目录更新为figures Co-authored-by: sunhao_hw<sunhao203@huawei.com> # message auto-generated for no-merge-commit merge: !517 merge docs into master [bugfix]文档低错整改以及images目录更新为figures Created-by: sunhao_hw Commit-by: sunhao_hw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 按照开源规范,将docs/images目录更名为docs/figures目录。并进行低错整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> ## 原因 <!--说明此次改动的目的、解决的问题等,应与类型标签匹配 --> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/catlass!5172 个月前
add matmul_fixpipe_opti Co-authored-by: chen_xu0513<chenxu210@huawei.com> # message auto-generated for no-merge-commit merge: !507 merge master into master add matmul_fixpipe_opti Created-by: chen_xu0513 Commit-by: chen_xu0513 Merged-by: cann-robot Description: ## 描述 该算子每完成一个基本块的计算,结果数据即通过Fixpipe搬出到UB上。当启用双目标模式控制(dualDstCtrl)时,计算结果矩阵会被分成两部分,并行写入两个Vector核(一个Cube核对应两个Vector核)的专属UB中。每个Vector核的UB支持独立开启Double Buffer以加速流水效率。<!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> ## 原因 <!--说明此次改动的目的、解决的问题等,应与类型标签匹配 --> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/catlass!5072 个月前
docs文档结构更新 Co-authored-by: sunhao_hw<sunhao203@huawei.com> # message auto-generated for no-merge-commit merge: !481 merge docs into master docs文档结构更新 Created-by: sunhao_hw Commit-by: sunhao_hw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 由于当前docs目录下文档逐渐增多,调整目录结构,提高文档易用性 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #143--> ## 原因 <!--说明此次改动的目的、解决的问题等,应与类型标签匹配 --> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/catlass!4812 个月前
[bugfix]文档低错整改以及images目录更新为figures Co-authored-by: sunhao_hw<sunhao203@huawei.com> # message auto-generated for no-merge-commit merge: !517 merge docs into master [bugfix]文档低错整改以及images目录更新为figures Created-by: sunhao_hw Commit-by: sunhao_hw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 按照开源规范,将docs/images目录更名为docs/figures目录。并进行低错整改 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> ## 原因 <!--说明此次改动的目的、解决的问题等,应与类型标签匹配 --> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/catlass!5172 个月前
README.md

CATLASS 项目文档

1 Practice

代码实践,指导开发者按步骤上手CATLASS各层级代码开发和使用,逐渐具备完整算子开发、测试、调优、模型使用的能力。

  • 01_quick_start:介绍模板库的环境准备,和提供的算子样例的编译执行。
  • 02_host_example_assembly:host侧组装matmul讲解
  • 03_kernel_development:kernel代码拆解,展示模板组装、arguments、params及关键函数等代码
  • 04_block_mmad_development:block_mmad代码拆解,主要接口说明
  • 05_block_scheduler_development:block_schedule代码拆解,主要接口说明
  • 06_tile_development:tile_copy/tile_mmad组件代码拆解,主要接口说明
  • 07_epilogue_adaptation:gemm的host/kernel层适配epilogue,及epilogue的block/tile开发
  • 08_evaluation:调测工具使用
  • 09_contribution_guide:完整样例的设计、开发、测试、合入流程
  • 10_matmul_optimization:介绍模板库下的基础调优方式,包括如何通过Tiling调参、应用不同的Dispatch策略的方式,快速获得性能提升。
  • 11_example_integration:样例适配、接入到整网的方式
  • evaluation_tools
  • others(folder):存放内部和外部贡献的难以归类的实践文档
    • tla_rebuild:TLA样例改造

2 Design

  • 00_project_overview:项目介绍、分层模块化设计、代码仓结构设计
  • 01_kernel_design:算法设计
    • 01_example_design:库上样例设计文档一览(将各样例文档放到样例文件夹内,此处只做归纳、牵引)
    • 02_swizzle:对模板库中Swizzle策略的基本介绍,这影响了AI Core上计算基本块间的顺序。
    • 03_dispatch_policies:对模板库在Block层面上BlockMmad中的一个重要模板参数DispatchPolicy的介绍。
    • 04_matmul_summary:对模板库的examples目录内已有的matmul模板设计进行介绍,包含样例模板清单、理论模板清单、工程优化清单、模板应用浅述,可用于matmul性能调优时参考。
    • 05_quant_summary:低精度专题
  • 02_tla:
    • 01_layout:TLA设计的layout结构和相关接口说明
    • 02_layout_tag:RowMajor、ColumnMajor、zN、nZ等layoutTag介绍和接口说明
    • 03_tensor:tensor结构体
  • 03_evg

3 API

Appendix

外部开源文章、视频

  • 常见问题 Q&A
  • 技术文章
    • 基础入门
      • C++ template使用
    • 概念理解
    • 问题定位
    • 性能优化
    • 优秀实践
  • 培训视频
    • Ascend C算子开发
    • 昇腾训练营 CATLASS相关特辑