本项目为Python用户提供算子编程接口,支持在昇腾AI处理器上加速计算,接口与Ascend C一一对应并遵守Python原生语法。
| 文件 | 最后提交记录 | 最后更新时间 |
|---|
| add PR and ISSUE templates Co-authored-by: kong0808<kongqiongzhuo@huawei.com> | 10 个月前 |
| modify code format Co-authored-by: li-yuanjie-da<liyuanjie5@h-partners.com> | 9 个月前 |
| | 6 个月前 |
| get_sort Co-authored-by: hyyisasleep<2106975800@qq.com> # message auto-generated for no-merge-commit merge: !56 merge getsort into master get_sort Created-by: li_zeran Commit-by: hyyisasleep Merged-by: cann-robot Description: ## 描述 add getsortoffset & getsortlen ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 python ut ascir ut ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/pyasc!56 | 7 个月前 |
| add common ops Co-authored-by: yuaner1057<zengjiayuan1@h-partners.com> Co-authored-by: cann-robot<songchangxia@cann.team> # message auto-generated for no-merge-commit merge: !78 merge dev into master add common ops Created-by: yuaner1057 Commit-by: yuaner1057;cann-robot Merged-by: cann-robot Description: ## 描述 新增common api ( get_store_atomic_config, init_soc_state, set_store_atomic_config, check_local_memory_ia), get_mrg_sort_result) ;修改gather_mask。 ## 测试 - UT:test目录下的ut测试用例(build_llt.sh脚本) - ST:python/tutorials目录下的单算子用例 ## 文档更新 docs/python-api/language/generated/asc.language.basic.check_local_memory_ia.md docs/python-api/language/generated/asc.language.basic.gather_mask.md docs/python-api/language/generated/asc.language.basic.get_mrg_sort_result.md docs/python-api/language/generated/asc.language.basic.get_store_atomic_config.md docs/python-api/language/generated/asc.language.basic.init_soc_state.md docs/python-api/language/generated/asc.language.basic.print_time_stamp.md docs/python-api/language/generated/asc.language.basic.set_store_atomic_config.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/pyasc!78 | 7 个月前 |
| fix bug of simulator mode when import torch Co-authored-by: hyolee<lihongbo14@huawei.com> # message auto-generated for no-merge-commit merge: !71 merge master into master fix bug of simulator mode when import torch Created-by: hyolee Commit-by: hyolee Merged-by: cann-robot Description: ## 描述 如果安装了torch_npu,import torch(2.5.1及以后版本)默认会加载libruntime.so,会先于仿真模式下的libruntime_camodel.so的加载,两者存在相同的函数符号,但是全局符号表里存的是libruntime.so的符号,导致实际运行的并非仿真模式,mix场景甚至会报错,解决方案是仿真模式下通过LD_PRELOAD环境变量提前加载libruntime_camodel.so ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 1、test目录下的ut测试用例(build_llt.sh脚本) 2、python/tutorials目录下的单算子用例 ## 文档更新 docs/op_debug_prof.md docs/quick_start.md ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/pyasc!71 | 6 个月前 |
| fix bug of simulator mode when import torch Co-authored-by: hyolee<lihongbo14@huawei.com> # message auto-generated for no-merge-commit merge: !71 merge master into master fix bug of simulator mode when import torch Created-by: hyolee Commit-by: hyolee Merged-by: cann-robot Description: ## 描述 如果安装了torch_npu,import torch(2.5.1及以后版本)默认会加载libruntime.so,会先于仿真模式下的libruntime_camodel.so的加载,两者存在相同的函数符号,但是全局符号表里存的是libruntime.so的符号,导致实际运行的并非仿真模式,mix场景甚至会报错,解决方案是仿真模式下通过LD_PRELOAD环境变量提前加载libruntime_camodel.so ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 1、test目录下的ut测试用例(build_llt.sh脚本) 2、python/tutorials目录下的单算子用例 ## 文档更新 docs/op_debug_prof.md docs/quick_start.md ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/pyasc!71 | 6 个月前 |
| modify format Co-authored-by: li-yuanjie-da<liyuanjie5@h-partners.com> | 9 个月前 |
| Initial commit | 10 个月前 |
| Initial commit | 10 个月前 |
| Initial commit | 10 个月前 |
| Initial commit | 10 个月前 |
| add pypi description Co-authored-by: li-yuanjie-da<liyuanjie5@h-partners.com> | 8 个月前 |
| Initial commit | 10 个月前 |
| feat: implement TensorDesc class and some methods Co-authored-by: zhi_yichao<yichao_zhi@qq.com> | 9 个月前 |
| Initial commit | 10 个月前 |
| Initial commit | 10 个月前 |
| Initial commit | 10 个月前 |
| add pypi description Co-authored-by: li-yuanjie-da<liyuanjie5@h-partners.com> | 8 个月前 |
pyasc
🔥Latest News
🚀概述
pyasc是一种用于编写高效自定义算子的编程语言,原生支持python标准规范。基于pyasc编写的算子程序,通过编译器编译和运行时调度,运行在昇腾AI处理器上。
pyasc编程接口与Ascend C类库接口一一对应,旨在提供与Ascend C接口相同的编程能力,目前正逐步开放中。有关pyasc编程接口的支持范围和约束,请参考Ascend C API。对于编程所需的抽象硬件架构和编程模型的相关知识,请参考《Ascend C算子开发》。本项目支持的AI处理器包括:Ascend 910C、Ascend 910B。
🔍目录结构
关键目录如下:
├── bin # 工具文件
├── docs # 说明文档
│ ├── figures # 文档图片
│ └── python-api # API接口文档
├── include # 后端头文件和td文件
│ └── ascir ## ascir头文件和td文件
├── lib # 后端源文件
│ ├── Dialect ## mlir方言定义源文件
│ ├── TableGen ## tablegen扩展代码文件
│ └── Target ## mlir目标代码转换源文件
├── python # python前端代码
│ ├── asc ## 用户可见的python包,对外发布的wheel包中以此目录为主,其他代码则按需打包
│ ├── src ## pybind相关代码,cpp格式
│ ├── test ## python格式的测试用例集
│ └── tutorials ## 供用户参考的样例集
└── test # 后端的测试用例集
├── Dialect ## mlir方言定义模块测试用例
├── Target ## mlir目标代码转换模块测试用例
└── tools ## 后端工具相关测试用例
⚡️快速入门
若您希望快速体验pyasc的使用过程,请访问如下文档获取简易教程。
- 构建:介绍搭建环境、编译执行、本地验证。
- 样例执行:介绍如何端到端执行样例代码。
📖学习教程
若您希望深入体验项目或参与项目贡献,请访问如下文档获取详细教程。
👥 合作贡献者
📝相关信息
本项目为Python用户提供算子编程接口,支持在昇腾AI处理器上加速计算,接口与Ascend C一一对应并遵守Python原生语法。
定制我的领域