AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
文件 最后提交记录 最后更新时间 add doc code owner“
2 天前 revert remote
17 天前 !1736 merge tzr-fix-mmad into master [AscendNPU-IR] fix: guard mmadl1 loop optimization by pipe direction Created-by: tanzirui123123 Commit-by: h00930278 Merged-by: tanshengshun Description: --- title: "[AscendNPU IR]:" --- ## 描述 Description 请提供此 Pull Request 的高级别说明。 Please describe what this PR is about. ## 类型 Category - [ ] Bug修复 Bugfix - [ ] 新功能 New feature - [ ] 代码风格更新(格式化,局部变量)Style changes - [ ] 重构(即不是新增功能,也不是修改bug的代码变动)Refactor - [ ] 构建过程或辅助工具的变动 Build-related - [ ] 文档内容更新 Docs ## Checklist - [ ] 我的代码遵循这个项目的代码风格 My code follows the project's code style - [ ] 我已经自己测试过我的代码 I have self-tested my code - [ ] 我已经更新了相应的文档 I have updated the relevant documentation - [ ] 我已经根据需要更新了对应的变更日志 I have updated the changelog as needed - [ ] 我已经在标题中正确使用了类型标签(例如: feat:, fix:)I have correctly used type labels in the title (e.g., feat:, fix:) 相关issue https://gitcode.com/Ascend/AscendNPU-IR/issues/220 See merge request: Ascend/AscendNPU-IR !1736 2 小时前 !1441 merge add-to_buffer-stub-patch into master [AscendNPU-IR] add llvm-project patch: bufferization.to_buffer for bytecode reading Created-by: zaq15csdn Commit-by: zaq15csdn Merged-by: tanshengshun Description: --- title: "[AscendNPU IR]:add llvm-project patch: bufferization.to_buffer for bytecode reading" --- ## 描述 Description 基于LLVM22中的 ToBufferOp的定义,在llvm19中空载这个op的定义。因为BytecodeReader对于未注册的op会 propertiesReader.read,解析optional的属性出现错位。以下报错解释: LLVM 22 把 to_buffer 当注册 op emit、且 kHasProperties 置位(native properties);LLVM19 没注册它 → reader 走第 1122 行 readAttribute,把native properties 字节当属性下标硬解 → 读出attrIdx=9 越界 → 崩。 如果本仓库升级到LLVM22后需要revert该提交。 ## 类型 Category - [x] Bug修复 Bugfix - [ ] 新功能 New feature - [ ] 代码风格更新(格式化,局部变量)Style changes - [ ] 重构(即不是新增功能,也不是修改bug的代码变动)Refactor - [ ] 构建过程或辅助工具的变动 Build-related - [ ] 文档内容更新 Docs ## Checklist - [ ] 我的代码遵循这个项目的代码风格 My code follows the project's code style - [ ] 我已经自己测试过我的代码 I have self-tested my code - [ ] 我已经更新了相应的文档 I have updated the relevant documentation - [ ] 我已经根据需要更新了对应的变更日志 I have updated the changelog as needed - [ ] 我已经在标题中正确使用了类型标签(例如: feat:, fix:)I have correctly used type labels in the title (e.g., feat:, fix:) See merge request: Ascend/AscendNPU-IR !1441 10 天前 revert remote
17 天前 [Huawei][AscendNPU-IR] port stride-align, alloc buffer, and ConvertToHIVMOp from f9d978b Port Ascend950/regbase HIVM coverage onto master for: - PreMarkStrideAlign (opt-in; not wired into the default pipeline) - MarkStrideAlign - EnableStrideAlign - HIVMAlignAllocSize - AllocExtraBuffer - AllocToAlloca - AutoInferBufferSize - CloneTensorEmpty - ConvertToHIVMOp - LoadOp eviction_policy (ODS + builders; keep may_implicit_transpose) Merge f9 regbase Mark/Enable/PreMark, CloneTensorEmpty VF patterns, and ConvertToHIVMOp left-pad remui / pad_const / GetGlobal / VF+forall skips / RemovePadConstAnnotation while keeping master FuncOp Enable, CustomOp align_dim, StorageAlignedAttr, and ConvertToHIVMOp alias tracing. Co-authored-by: Cursor <cursoragent@cursor.com>
2 天前 [test] test the to_buffer op revert merge request: [test] test the to_buffer op e0ff516be2ae5ff2758b1607dfbcf7a8ca764b3e This revert merge request !1569 6 天前 [BiShengIR] add clang-format/tidy
1 年前 Fix clang-tidy naming rule
8 个月前 Add multi-architecture Dockerfile and .dockerignore
1 个月前 [Huawei][AscendNPUIR]practice
4 个月前 [test] test the to_buffer op revert merge request: [test] test the to_buffer op e0ff516be2ae5ff2758b1607dfbcf7a8ca764b3e This revert merge request !1569 6 天前 [Huawei][AscendNPU IR] adapt SelectRoundModeTest.cpp gtest for a3 Offering: AscendNPU IR
2 个月前 [AscendNPU IR] Add HFusion Co-authored-by: chenxiangting<chenxiangting@huawei.com>
9 个月前 [AscendNPU IR] Add HFusion Co-authored-by: chenxiangting<chenxiangting@huawei.com>
9 个月前 [AscendNPU IR] Add OWNERS Co-authored-by: SL25<L912572014@163.com>
9 个月前 [DOC] update readme add some badges
2 个月前 [DOC] update readme add some badges
2 个月前 [Huawei][AscendNPU IR] add notice for open source software Signed-off-by: tianjihua <tianjihua@huawei.com>
3 个月前
🎯 项目介绍
AscendNPU IR(AscendNPU Intermediate Representation)是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优。
AscendNPU IR提供多级抽象接口:提供一系列高层抽象接口,屏蔽昇腾计算、搬运、同步指令细节,编译优化自动感知硬件架构,将硬件无关表达映射到底层指令,提升算子开发易用性;同时提供细粒度性能控制接口,能够精准控制片上内存地址、流水同步插入位置以及是否使能乒乓流水优化等,允许性能细粒度控制。
AscendNPU IR通过开源社区开放接口,支持生态框架灵活对接,高效使能昇腾AI处理器。
🔗 仓库与文档
🔍 仓库结构
AscendNPU IR仓关键目录如下所示:
├── bishengir // 源码目录
│ ├── cmake
│ ├── include // 头文件
│ ├── lib // 源文件
│ ├── test // 测试用例
│ │ └── Integration // 端到端用例
│ └── tools // 二进制工具
├── build-tools // 构建工具
├── CMakeLists.txt
├── docs // 文档
├── LICENSE
├── NOTICE
├── README.md
└── README_zh.md
📚 文档说明
本项目在 docs/ 目录下使用基于 Sphinx 的文档工程,通过成对的 Markdown 源文件提供英文与中文双语文档 。
语言 :完整文档方案请参见 docs/README.md(英文)与 docs/README_zh.md(中文)。
文档组织方案 :
英文 :入口页为 docs/source/en/index.rst,正文位于 docs/source/en 目录下。
中文 :入口页为 docs/source/zh_cn/index.rst,正文位于 docs/source/zh_cn 目录下。
命名规范 :docs/(包含 docs/source/)下的目录名 与文档文件名 统一采用 snake_case 小写下划线风格,例如:quick_start/、installing_guide.md、user_guide/,以保持路径与 URL 风格一致。
在仓库根目录下构建文档:
make -C docs html
make -C docs html-zh
make -C docs html-all
关于本地预览、Read the Docs 部署、新增文档与整体结构说明,请参考 docs/README_zh.md(或英文版 docs/README.md)。
⚡️ 快速上手
快速上手指南请见:快速上手
编译与安装指南请见:构建安装
构建端到端用例示例请见:README_zh.md
📝 版本配套说明
请参考CANN社区版文档 相关章节,对昇腾硬件、CANN软件及相应深度学习框架进行安装准备。
📄 许可证书
Apache License v2.0
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
https://ascendnpu-ir.gitcode.com 定制我的领域 举报项目