| Files | Last commit | Last update |
|---|---|---|
【bugfix】修复conversion算子example中调用示例 Co-authored-by: jisongyuan@h-partners.com<jisongyuan@h-partners.com> # message auto-generated for no-merge-commit merge: !1020 merge example into master 【bugfix】修复conversion算子example中调用示例 Created-by: ji-songyuan Commit-by: jisongyuan@h-partners.com Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> coalesce_spars提供geir_example调用示例 diag_v2使用手写aclnn_diag接口,关闭自动生成的aclnn_diag_v2接口 feeds_repeat提供geir_example调用示例 stack_ball_query提供geir_example调用示例,修改infershape符合标准 transpose_v2使用transpose中手写aclnn_permute,关闭自动生成aclnn_transpose_v2接口,并提供对应算子的aclnn_example ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> #593 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> example已经验证,可以使用 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!1020 | 9 months ago | |
init | 1 year ago | |
fix(error-code): remediate illegal E*9*** reporting for four conversion ops Co-authored-by: yyt_hw<yangyuting54@huawei.com> # message auto-generated for no-merge-commit merge: !6448 merge br_yyt_errorcode into master fix(error-code): remediate illegal E*9*** reporting for four conversion ops Created-by: yyt_hw Commit-by: yyt_hw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> [ErrorCode] conversion 四算子非法 E*9*** 错误码整改 1. fill_diagonal_v2 空指针:OP_CHECK_NULL_WITH_CONTEXT(EZ9999)→ OP_LOGE_WITH_INVALID_INPUT(EZ0004) dtype / dtype 不一致 / coreNum:改为 OP_LOGE_FOR_INVALID_DTYPE(_S)_WITH_REASON / OP_LOGE_FOR_INVALID_VALUE_WITH_REASON 废弃 EZ0007:OP_LOGE_WITH_INVALID_INPUT_DTYPE → OP_LOGE_FOR_INVALID_DTYPE_WITH_REASON AICPU launcher 失败:下层已正式首报 → 外层改为 OP_LOGE_WITHOUT_REPORT 补充 tiling 负向 UT(非法 dtype、dtype mismatch) 2. npu_format_cast srcTensor == nullptr:OP_LOGE(ACLNN_ERR_INNER_NULLPTR) → OP_CHECK_NULL + 返回 ACLNN_ERR_PARAM_NULLPTR(空参正式路径) 3. transpose_v2 dim/dtype/shape/perm 非法:OP_LOGE(context…) → 对应 OP_LOGE_FOR_INVALID_* 删除 GetPlatformInfo 外层失败判断(内层恒 SUCCESS,死路径) DoTiling 外层:内层已首报 → OP_LOGE_WITHOUT_REPORT 补充非法 dtype / perm 负向 UT 4. unsqueeze InferShape 空参 / axes 非法 / 维数超限:改为 OP_LOGE_WITH_INVALID_INPUT / OP_LOGE_FOR_INVALID_* L0:dim 越界、重复 → OP_LOGE_FOR_INVALID_VALUE_WITH_REASON;InferShape 已首报后外层 WITHOUT_REPORT contiguous 校验:ACL_ERROR_FAILURE → ACLNN_ERR_PARAM_INVALID(EZ1001) ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#3674](https://gitcode.com/cann/ops-math/issues/3674) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT用例验证 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6448 | 18 days ago | |
transposeV2和diagFlat在kernel侧传入的tilingData不变时增加传参__restrict__的修饰符 Co-authored-by: wy519<wangyang519@huawei.com> # message auto-generated for no-merge-commit merge: !1060 merge fix_math_issue into master transposeV2和diagFlat在kernel侧传入的tilingData不变时增加传参__restrict__的修饰符 Created-by: wy519 Commit-by: wy519 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> transposeV2和diagFlat在kernel侧传入的tilingData在后续未修改,之前使用了const修饰,为了进一步表示唯一性,增加__restrict__的修饰符 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> https://gitcode.com/cann/ops-math/issues/489 https://gitcode.com/cann/ops-math/issues/490 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 修改后测试功能性能正常 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> 不涉及 ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!1060 | 8 months ago | |
fix(error-code): remediate illegal E*9*** reporting for four conversion ops Co-authored-by: yyt_hw<yangyuting54@huawei.com> # message auto-generated for no-merge-commit merge: !6448 merge br_yyt_errorcode into master fix(error-code): remediate illegal E*9*** reporting for four conversion ops Created-by: yyt_hw Commit-by: yyt_hw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> [ErrorCode] conversion 四算子非法 E*9*** 错误码整改 1. fill_diagonal_v2 空指针:OP_CHECK_NULL_WITH_CONTEXT(EZ9999)→ OP_LOGE_WITH_INVALID_INPUT(EZ0004) dtype / dtype 不一致 / coreNum:改为 OP_LOGE_FOR_INVALID_DTYPE(_S)_WITH_REASON / OP_LOGE_FOR_INVALID_VALUE_WITH_REASON 废弃 EZ0007:OP_LOGE_WITH_INVALID_INPUT_DTYPE → OP_LOGE_FOR_INVALID_DTYPE_WITH_REASON AICPU launcher 失败:下层已正式首报 → 外层改为 OP_LOGE_WITHOUT_REPORT 补充 tiling 负向 UT(非法 dtype、dtype mismatch) 2. npu_format_cast srcTensor == nullptr:OP_LOGE(ACLNN_ERR_INNER_NULLPTR) → OP_CHECK_NULL + 返回 ACLNN_ERR_PARAM_NULLPTR(空参正式路径) 3. transpose_v2 dim/dtype/shape/perm 非法:OP_LOGE(context…) → 对应 OP_LOGE_FOR_INVALID_* 删除 GetPlatformInfo 外层失败判断(内层恒 SUCCESS,死路径) DoTiling 外层:内层已首报 → OP_LOGE_WITHOUT_REPORT 补充非法 dtype / perm 负向 UT 4. unsqueeze InferShape 空参 / axes 非法 / 维数超限:改为 OP_LOGE_WITH_INVALID_INPUT / OP_LOGE_FOR_INVALID_* L0:dim 越界、重复 → OP_LOGE_FOR_INVALID_VALUE_WITH_REASON;InferShape 已首报后外层 WITHOUT_REPORT contiguous 校验:ACL_ERROR_FAILURE → ACLNN_ERR_PARAM_INVALID(EZ1001) ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#3674](https://gitcode.com/cann/ops-math/issues/3674) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> UT用例验证 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!6448 | 18 days ago | |
【bugfix】修复conversion算子example中调用示例 Co-authored-by: jisongyuan@h-partners.com<jisongyuan@h-partners.com> # message auto-generated for no-merge-commit merge: !1020 merge example into master 【bugfix】修复conversion算子example中调用示例 Created-by: ji-songyuan Commit-by: jisongyuan@h-partners.com Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> coalesce_spars提供geir_example调用示例 diag_v2使用手写aclnn_diag接口,关闭自动生成的aclnn_diag_v2接口 feeds_repeat提供geir_example调用示例 stack_ball_query提供geir_example调用示例,修改infershape符合标准 transpose_v2使用transpose中手写aclnn_permute,关闭自动生成aclnn_transpose_v2接口,并提供对应算子的aclnn_example ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> #593 ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> example已经验证,可以使用 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!1020 | 9 months ago | |
产品名变更 Co-authored-by: gitcode-chenjiao<chenjiao31@huawei.com> # message auto-generated for no-merge-commit merge: !5912 merge master into master 产品名变更 Created-by: gitcode-chenjiao Commit-by: gitcode-chenjiao Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> AI处理器对应的产品型号名称更新 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> [#3258](https://gitcode.com/cann/ops-math/issues/3258) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ok ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> *.md ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!5912 | 1 month ago |
TransposeV2
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Ascend 950PR&950DT系列产品 | × |
| Atlas A3系列产品 | √ |
| Atlas A2系列产品 | √ |
| Atlas 200I/500 A2推理产品 | × |
| Atlas推理系列产品 | × |
| Atlas训练系列产品 | × |
| Kirin X90处理器系列产品 | √ |
| Kirin 9030处理器系列产品 | √ |
功能说明
- 算子功能:实现张量的维度置换(Permutation)操作,按照指定的顺序重新排列输入张量的维度。如输入self是shape为[2, 3, 5]的tensor,dims为(2, 0, 1),则输出是shape为[5, 2, 3]的tensor。
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| self | 输入张量 | 需要进行维度置换的输入张量。 | 见下方 | ND |
| dims | 输入数组 | 整型数组,代表原来tensor的维度,指定新的轴顺序。取值需在[-self的维度数量,self的维度数量-1]范围内。 | INT32、INT64 | - |
| out | 输出 | 维度最大不超过8维,shape由dims和原self的shape共同决定,dtype需要与self一致。 | 同self | ND |
- Atlas A3系列产品:数据类型支持FLOAT、FLOAT16、BFLOAT16。
- Kirin X90/Kirin 9030处理器系列产品:数据类型支持FLOAT、FLOAT16。
约束说明
无
调用说明
| 调用方式 | 样例代码 | 说明 |
|---|---|---|
| aclnn接口 | test_aclnn_transpose_v2 | 通过aclnnPermute接口方式调用transposeV2算子。 |