| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
修复DCCI及Sync类接口问题 Co-authored-by: pangfudong<pangfudong@huawei.com> # message auto-generated for no-merge-commit merge: !1720 merge master into master 修复DCCI及Sync类接口问题 Created-by: pangfd Commit-by: pangfudong Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复DCCI及Sync类接口问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1720 | 5 个月前 | |
新增c_api中mmad的资料描述 Co-authored-by: haipingmao<maohaiping@huawei.com> # message auto-generated for no-merge-commit merge: !1775 merge br_fix_docs into master 新增c_api中mmad的资料描述 Created-by: haipingmao Commit-by: haipingmao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 新增mmad资料描述,并补充调用示例。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> NA ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/api/context/c_api/cube_compute/asc_mmad.md ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1775 | 5 个月前 | |
docs文档整改+更新 Co-authored-by: jiachengtang<tangjiacheng7@huawei.com> # message auto-generated for no-merge-commit merge: !1740 merge master into master docs文档整改+更新 Created-by: jiachengtang Commit-by: jiachengtang Merged-by: cann-robot Description: ## 描述 将asc_copy_gm2l1_dn2nz及asc_copy_gm2l1_nd2nz的图替换为更恰当的图 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1740 | 5 个月前 | |
docs文档整改+更新 Co-authored-by: jiachengtang<tangjiacheng7@huawei.com> # message auto-generated for no-merge-commit merge: !1740 merge master into master docs文档整改+更新 Created-by: jiachengtang Commit-by: jiachengtang Merged-by: cann-robot Description: ## 描述 将asc_copy_gm2l1_dn2nz及asc_copy_gm2l1_nd2nz的图替换为更恰当的图 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1740 | 5 个月前 | |
新增微指令c_api接口资料 Co-authored-by: Zql99<zhangqianlong8@huawei.com> # message auto-generated for no-merge-commit merge: !255 merge master into master 新增微指令c_api接口资料 Created-by: Zql99 Commit-by: Zql99 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 新增微指令c_api接口资料。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/api/context/c_api/reg/asc_bfloat162e2m1x2.md docs/api/context/c_api/reg/asc_copy.md docs/api/context/c_api/reg/asc_e2m1x22bfloat16.md docs/api/context/c_api/reg/asc_eq_scalar.md docs/api/context/c_api/reg/asc_eq.md docs/api/context/c_api/reg/asc_float2e4m3.md docs/api/context/c_api/reg/asc_float2hif8.md docs/api/context/c_api/reg/asc_float2int16.md docs/api/context/c_api/reg/asc_float2int32.md docs/api/context/c_api/reg/asc_float2int64.md docs/api/context/c_api/reg/asc_mul_scalar.md docs/api/context/c_api/reg/asc_mul.md docs/api/context/c_api/reg/asc_or.md docs/api/context/c_api/reg/asc_sqrt.md docs/api/context/c_api/reg/asc_truncate.md docs/api/context/c_api/reg/asc_uint82uint32.md docs/api/context/c_api/reg/asc_uint322uint16.md docs/api/context/c_api/misc/asc_init.md docs/api/context/c_api/scalar_compute/asc_ffs.md docs/api/context/c_api/sys_var/asc_set_ctrl.md docs/api/context/c_api/reg/reg_load/asc_loadunalign_postupdate.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/asc-devkit!255 | 7 个月前 | |
refactor cast md Co-authored-by: jinhu_huawei<jinhu5@huawei.com> # message auto-generated for no-merge-commit merge: !1645 merge refactor_cast_md_3 into master refactor cast md Created-by: jinhu_huawei Commit-by: jinhu_huawei Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> docs/api/context/c_api/reg/reg_vector下的cast类型文档需要排查问题: 调用示例舍入模式注释错误(rd标注为RINT) asc_half2int32.md asc_float2bfloat16.md 奇偶索引标注反了 asc_int162float.md 约束说明数据类型举例错误 asc_float2e5m2.md asc_int162half.md 饱和/非饱和描述反了 asc_int162uint8.md 调用示例用未定义函数 asc_float2e5m2.md ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> https://gitcode.com/cann/asc-devkit/issues/473 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。-->asc_half2int32.md asc_float2bfloat16.md asc_int162float.md asc_float2e5m2.md asc_int162half.md asc_int162uint8.md asc_float2e5m2.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1645 | 5 个月前 | |
add capi docs Co-authored-by: lihong130<lihong130@huawei.com> # message auto-generated for no-merge-commit merge: !1197 merge docs/capi into master add capi docs Created-by: lihong130 Commit-by: lihong130 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 1. 修改和补充下列新增的capi的文档 asc_dcci asc_dci asc_get_l0c2gm_config asc_mmad asc_fill_l0a asc_fill_l0b asc_clear_nthbit asc_set_nthbit asc_get_buf asc_release_buf asc_sync_block_arrive asc_sync_data_barrier asc_get_arch_ver asc_get_core_id asc_bitsort asc_mrgsort4 asc_transpose asc_transto5hd 2. 修改接口变量名称 将 asc_mmad、asc_bitsort 和 asc_mrgsort4 中的变量名称统一,删除 asc_bitsort 中不支持的保留参数 3. 添加 A2A3的asc_transto5hd_sync同步接口 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> https://gitcode.com/cann/asc-devkit/issues/330 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT测试和冒烟测试 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> c_api_list.md asc_dcci.md asc_dci.md asc_get_l0c2gm_config.md asc_mmad.md asc_fill_l0a.md asc_fill_l0b.md asc_clear_nthbit.md asc_set_nthbit.md asc_get_buf.md asc_release_buf.md asc_sync_block_arrive.md asc_sync_data_barrier.md asc_get_arch_ver.md asc_get_core_id.md asc_bitsort.md asc_mrgsort4.md asc_transpose.md asc_transto5hd.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [x] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1197 | 5 个月前 | |
修复c_api资料部分软链接失效问题 Co-authored-by: hw-zjy<zhoujingyi9@hisilicon.com> # message auto-generated for no-merge-commit merge: !1332 merge master into master 修复c_api资料部分软链接失效问题 Created-by: hw-zjy Commit-by: hw-zjy Merged-by: cann-robot Description: ## 描述 修复c_api资料部分软链接失效问题,与实际保持一致。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1332 | 5 个月前 | |
修复c_api资料部分软链接失效问题 Co-authored-by: hw-zjy<zhoujingyi9@hisilicon.com> # message auto-generated for no-merge-commit merge: !1332 merge master into master 修复c_api资料部分软链接失效问题 Created-by: hw-zjy Commit-by: hw-zjy Merged-by: cann-robot Description: ## 描述 修复c_api资料部分软链接失效问题,与实际保持一致。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1332 | 5 个月前 | |
docs文档整改+更新 Co-authored-by: jiachengtang<tangjiacheng7@huawei.com> # message auto-generated for no-merge-commit merge: !1740 merge master into master docs文档整改+更新 Created-by: jiachengtang Commit-by: jiachengtang Merged-by: cann-robot Description: ## 描述 将asc_copy_gm2l1_dn2nz及asc_copy_gm2l1_nd2nz的图替换为更恰当的图 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1740 | 5 个月前 | |
fix:asc_set_ctrl Co-authored-by: Zql99<zhangqianlong8@huawei.com> # message auto-generated for no-merge-commit merge: !1362 merge master into master fix:asc_set_ctrl Created-by: Zql99 Commit-by: Zql99 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> fix:asc_set_ctrl ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs\api\context\c_api\sys_var\asc_set_ctrl.md ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1362 | 5 个月前 | |
修改asc_transto5hd示例中不符合预期的参数 Co-authored-by: chenmyk<chenmingyu16@huawei.com> # message auto-generated for no-merge-commit merge: !641 merge 5hd_md into master 修改asc_transto5hd示例中不符合预期的参数 Created-by: chenmyk Commit-by: chenmyk Merged-by: cann-robot Description: ## 描述 修改asc_transto5hd示例中不符合预期的参数。 将调用示例中的参数 repeat 从 16 修正为 1,并将 dst_stride 和 src_stride 从 16 和 1 修正为 0。此修改使示例代码与参数说明文档保持一致,确保当 repeat 为 1 时,步长(stride)设置为 0 以提供正确且符合预期的使用示例。 ## 关联的Issue 关联Issue [#189](https://gitcode.com/cann/asc-devkit/issues/189) ## 测试 样例测试验证 ## 文档更新 docs\api\context\c_api\vector_compute\asc_transto5hd.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/asc-devkit!641 | 5 个月前 | |
修改asc_copy_ub2l1接口资料 Co-authored-by: jinhu_huawei<jinhu5@huawei.com> # message auto-generated for no-merge-commit merge: !1769 merge fix_capi_md_0423 into master 修改asc_copy_ub2l1接口资料 Created-by: jinhu_huawei Commit-by: jinhu_huawei Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> asc_copy_ub2l1接口资料函数参数修饰符错误。 dst应该是__cbuf__,而不是__gm__。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> https://gitcode.com/cann/asc-devkit/issues/539 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> NA ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> docs/api/context/c_api/vector_datamove/asc_copy_ub2l1.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1769 | 5 个月前 | |
新增部分CAPI接口 Co-authored-by: pangfudong<pangfudong@huawei.com> # message auto-generated for no-merge-commit merge: !166 merge master into master 新增部分CAPI接口 Created-by: pangfd Commit-by: pangfudong Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 新增部分CAPI接口 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/asc-devkit!166 | 7 个月前 | |
将asc_release_buf更名为asc_unlock Co-authored-by: jiachengtang<tangjiacheng7@huawei.com> # message auto-generated for no-merge-commit merge: !1729 merge master into master 将asc_release_buf更名为asc_unlock Created-by: jiachengtang Commit-by: jiachengtang Merged-by: cann-robot Description: ## 描述 将asc_release_buf替换asc_unlock,替换入参名 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 修改asc_release_buf文档为asc_unlock ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1729 | 5 个月前 | |
fix: 修复c_api通用说明中地址重叠示例图片丢失问题 Co-authored-by: munan<munan@huawei.com> # message auto-generated for no-merge-commit merge: !1587 merge master into master fix: 修复c_api通用说明中地址重叠示例图片丢失问题 Created-by: munanhw Commit-by: munan Merged-by: cann-robot Description: ## 描述 fix: 修复c_api通用说明中地址重叠示例图片丢失问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [x] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!1587 | 5 个月前 |
C API
C API开放芯片完备编程能力,支持以数组形式分配内存,一般基于指针编程。提供与业界一致的C语言编程体验。
需要包含的头文件
说明
包含asc_simd.h文件来调用C API相应接口。如无特殊说明,包含该头文件即可满足接口调用需求。 若API文档中有特殊说明,则应遵循API的具体说明。
#include "c_api/asc_simd.h"
API类型介绍
- 前n个数据计算:该类型API在计算时采用“紧密排布”的数据读取方式,即从起始位置开始,按顺序连续获取所需数据。例如,若需处理N个数据,则从源操作数的第0个位置开始,依次取至第N-1个位置。
- 高维切分计算:该类型API按照设定的规则“跳过部分数据”。适合处理需要间隔采样的场景,灵活度高,但需要额外配置相关参数。
- 同步计算:该类型API内部自动插入同步操作,易用性更强。
关键字
| 名称 | 描述 |
|---|---|
| __gm__ | 存储空间定义修饰符,表示被修饰的变量位于Global Memory地址空间。 |
| __ubuf__ | 存储空间定义修饰符,表示被修饰的变量位于Unified Buffer地址空间。 |
| __aicore__ | 执行空间限定符。表示该函数只能在Ai Core上执行。 |
流水类型
NPU内部有不同的计算单元,在计算时往往需要把计算数据搬运到计算单元上。不同计算单元上的计算过程、数据搬运过程可划分为不同的流水线。在AI Core上执行的操作会被分配到不同的流水线(PIPE)上执行,包括以下几种:
- PIPE_S:标量流水线,负责指令分发和标量计算。
- PIPE_V:矢量计算流水线。
- PIPE_M:矩阵计算流水线。
- PIPE_MTE1:搬运操作。包括从L1 Buffer到L0A Buffer或L0B Buffer,从L1 Buffer到UB的搬运操作和L0A Buffer或L0B Buffer的初始化操作。
- PIPE_MTE2:搬运操作。包括从GM到L1 Buffer、从GM到L0A Buffer或L0B Buffer、从GM到UB的搬运操作和L1 Buffer的初始化操作。
- PIPE_MTE3:搬运操作。包括从UB到GM,从UB到L1 Buffer的操作。
- PIPE_FIX:Fixpipe流水线。
- PIPE_ALL:所有流水线。
可通过同步控制类API控制同一流水线内的运行顺序和不同流水线建的执行顺序。
API列表
| 目录 |
|---|
| 数据结构 |
| 矢量计算 |
| 数据搬运 |
| 同步控制 |
| 系统变量 |
| 原子操作 |
| 其他操作 |