| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Co-authored-by: qq_65982235<sunrubing0401@163.com> # message auto-generated for no-merge-commit merge: !4433 merge feature/addr_v2_pr into master feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Created-by: qq_65982235 Commit-by: qq_65982235 Merged-by: cann-robot Description: ## 描述 新增 addr_v2 自定义算子完整实现(A2/Ascend910B 平台),数学定义:out = beta * self + alpha * outer(vec1, vec2) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2425 ## 算子信息 - 支持数据类型:FP32 / FP16 / BF16 / INT8 / UINT8 / BOOL - 支持平台:Atlas A2 训练系列产品/Atlas A2 推理系列产品(ascend910b) - aclnn 接口:aclnnAddrV2 / aclnnInplaceAddrV2 ## 交付件 - op_kernel/addr_v2.cpp:Kernel 实现(3 分支 tilingKey,uint64_t GM 偏移) - op_host/arch22/addr_v2_tiling.cpp:Tiling 实现(含 N*M>UINT32_MAX 校验) - op_api/aclnn_addr_v2.cpp:aclnn 接口(含 CHECK_RET 空指针检查) - tests/ut/:4 个 UT 测试(tiling/infershape/op_api/inplace) - examples/test_aclnn_addr_v2.cpp:ST 示例 - README.md + docs/aclnnAddrV2&aclnnInplaceAddrV2.md:文档 ## 测试情况 - 精度:411/411 PASS(符合生态算子开源精度标准 experimental_standard.md,1.1-1.4 用例生成 + 2.x 误差指标) - UT:50/50 PASS(tiling 9 + infershape 17 + op_api 22 + inplace 2) - ST:1/1 PASS(examples 端到端) - 性能:对比 torch.addr 标杆,加速比 0.77/0.91/2.03 ≥ 0.6 达标 - 编译:-Werror 严格模式通过 ## 类型标签 - [x] 新特性 See merge request: cann/ops-math!4433 | 2 个月前 | |
feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Co-authored-by: qq_65982235<sunrubing0401@163.com> # message auto-generated for no-merge-commit merge: !4433 merge feature/addr_v2_pr into master feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Created-by: qq_65982235 Commit-by: qq_65982235 Merged-by: cann-robot Description: ## 描述 新增 addr_v2 自定义算子完整实现(A2/Ascend910B 平台),数学定义:out = beta * self + alpha * outer(vec1, vec2) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2425 ## 算子信息 - 支持数据类型:FP32 / FP16 / BF16 / INT8 / UINT8 / BOOL - 支持平台:Atlas A2 训练系列产品/Atlas A2 推理系列产品(ascend910b) - aclnn 接口:aclnnAddrV2 / aclnnInplaceAddrV2 ## 交付件 - op_kernel/addr_v2.cpp:Kernel 实现(3 分支 tilingKey,uint64_t GM 偏移) - op_host/arch22/addr_v2_tiling.cpp:Tiling 实现(含 N*M>UINT32_MAX 校验) - op_api/aclnn_addr_v2.cpp:aclnn 接口(含 CHECK_RET 空指针检查) - tests/ut/:4 个 UT 测试(tiling/infershape/op_api/inplace) - examples/test_aclnn_addr_v2.cpp:ST 示例 - README.md + docs/aclnnAddrV2&aclnnInplaceAddrV2.md:文档 ## 测试情况 - 精度:411/411 PASS(符合生态算子开源精度标准 experimental_standard.md,1.1-1.4 用例生成 + 2.x 误差指标) - UT:50/50 PASS(tiling 9 + infershape 17 + op_api 22 + inplace 2) - ST:1/1 PASS(examples 端到端) - 性能:对比 torch.addr 标杆,加速比 0.77/0.91/2.03 ≥ 0.6 达标 - 编译:-Werror 严格模式通过 ## 类型标签 - [x] 新特性 See merge request: cann/ops-math!4433 | 2 个月前 | |
feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Co-authored-by: qq_65982235<sunrubing0401@163.com> # message auto-generated for no-merge-commit merge: !4433 merge feature/addr_v2_pr into master feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Created-by: qq_65982235 Commit-by: qq_65982235 Merged-by: cann-robot Description: ## 描述 新增 addr_v2 自定义算子完整实现(A2/Ascend910B 平台),数学定义:out = beta * self + alpha * outer(vec1, vec2) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2425 ## 算子信息 - 支持数据类型:FP32 / FP16 / BF16 / INT8 / UINT8 / BOOL - 支持平台:Atlas A2 训练系列产品/Atlas A2 推理系列产品(ascend910b) - aclnn 接口:aclnnAddrV2 / aclnnInplaceAddrV2 ## 交付件 - op_kernel/addr_v2.cpp:Kernel 实现(3 分支 tilingKey,uint64_t GM 偏移) - op_host/arch22/addr_v2_tiling.cpp:Tiling 实现(含 N*M>UINT32_MAX 校验) - op_api/aclnn_addr_v2.cpp:aclnn 接口(含 CHECK_RET 空指针检查) - tests/ut/:4 个 UT 测试(tiling/infershape/op_api/inplace) - examples/test_aclnn_addr_v2.cpp:ST 示例 - README.md + docs/aclnnAddrV2&aclnnInplaceAddrV2.md:文档 ## 测试情况 - 精度:411/411 PASS(符合生态算子开源精度标准 experimental_standard.md,1.1-1.4 用例生成 + 2.x 误差指标) - UT:50/50 PASS(tiling 9 + infershape 17 + op_api 22 + inplace 2) - ST:1/1 PASS(examples 端到端) - 性能:对比 torch.addr 标杆,加速比 0.77/0.91/2.03 ≥ 0.6 达标 - 编译:-Werror 严格模式通过 ## 类型标签 - [x] 新特性 See merge request: cann/ops-math!4433 | 2 个月前 | |
feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Co-authored-by: qq_65982235<sunrubing0401@163.com> # message auto-generated for no-merge-commit merge: !4433 merge feature/addr_v2_pr into master feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Created-by: qq_65982235 Commit-by: qq_65982235 Merged-by: cann-robot Description: ## 描述 新增 addr_v2 自定义算子完整实现(A2/Ascend910B 平台),数学定义:out = beta * self + alpha * outer(vec1, vec2) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2425 ## 算子信息 - 支持数据类型:FP32 / FP16 / BF16 / INT8 / UINT8 / BOOL - 支持平台:Atlas A2 训练系列产品/Atlas A2 推理系列产品(ascend910b) - aclnn 接口:aclnnAddrV2 / aclnnInplaceAddrV2 ## 交付件 - op_kernel/addr_v2.cpp:Kernel 实现(3 分支 tilingKey,uint64_t GM 偏移) - op_host/arch22/addr_v2_tiling.cpp:Tiling 实现(含 N*M>UINT32_MAX 校验) - op_api/aclnn_addr_v2.cpp:aclnn 接口(含 CHECK_RET 空指针检查) - tests/ut/:4 个 UT 测试(tiling/infershape/op_api/inplace) - examples/test_aclnn_addr_v2.cpp:ST 示例 - README.md + docs/aclnnAddrV2&aclnnInplaceAddrV2.md:文档 ## 测试情况 - 精度:411/411 PASS(符合生态算子开源精度标准 experimental_standard.md,1.1-1.4 用例生成 + 2.x 误差指标) - UT:50/50 PASS(tiling 9 + infershape 17 + op_api 22 + inplace 2) - ST:1/1 PASS(examples 端到端) - 性能:对比 torch.addr 标杆,加速比 0.77/0.91/2.03 ≥ 0.6 达标 - 编译:-Werror 严格模式通过 ## 类型标签 - [x] 新特性 See merge request: cann/ops-math!4433 | 2 个月前 | |
feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Co-authored-by: qq_65982235<sunrubing0401@163.com> # message auto-generated for no-merge-commit merge: !4433 merge feature/addr_v2_pr into master feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Created-by: qq_65982235 Commit-by: qq_65982235 Merged-by: cann-robot Description: ## 描述 新增 addr_v2 自定义算子完整实现(A2/Ascend910B 平台),数学定义:out = beta * self + alpha * outer(vec1, vec2) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2425 ## 算子信息 - 支持数据类型:FP32 / FP16 / BF16 / INT8 / UINT8 / BOOL - 支持平台:Atlas A2 训练系列产品/Atlas A2 推理系列产品(ascend910b) - aclnn 接口:aclnnAddrV2 / aclnnInplaceAddrV2 ## 交付件 - op_kernel/addr_v2.cpp:Kernel 实现(3 分支 tilingKey,uint64_t GM 偏移) - op_host/arch22/addr_v2_tiling.cpp:Tiling 实现(含 N*M>UINT32_MAX 校验) - op_api/aclnn_addr_v2.cpp:aclnn 接口(含 CHECK_RET 空指针检查) - tests/ut/:4 个 UT 测试(tiling/infershape/op_api/inplace) - examples/test_aclnn_addr_v2.cpp:ST 示例 - README.md + docs/aclnnAddrV2&aclnnInplaceAddrV2.md:文档 ## 测试情况 - 精度:411/411 PASS(符合生态算子开源精度标准 experimental_standard.md,1.1-1.4 用例生成 + 2.x 误差指标) - UT:50/50 PASS(tiling 9 + infershape 17 + op_api 22 + inplace 2) - ST:1/1 PASS(examples 端到端) - 性能:对比 torch.addr 标杆,加速比 0.77/0.91/2.03 ≥ 0.6 达标 - 编译:-Werror 严格模式通过 ## 类型标签 - [x] 新特性 See merge request: cann/ops-math!4433 | 2 个月前 | |
feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Co-authored-by: qq_65982235<sunrubing0401@163.com> # message auto-generated for no-merge-commit merge: !4433 merge feature/addr_v2_pr into master feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Created-by: qq_65982235 Commit-by: qq_65982235 Merged-by: cann-robot Description: ## 描述 新增 addr_v2 自定义算子完整实现(A2/Ascend910B 平台),数学定义:out = beta * self + alpha * outer(vec1, vec2) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2425 ## 算子信息 - 支持数据类型:FP32 / FP16 / BF16 / INT8 / UINT8 / BOOL - 支持平台:Atlas A2 训练系列产品/Atlas A2 推理系列产品(ascend910b) - aclnn 接口:aclnnAddrV2 / aclnnInplaceAddrV2 ## 交付件 - op_kernel/addr_v2.cpp:Kernel 实现(3 分支 tilingKey,uint64_t GM 偏移) - op_host/arch22/addr_v2_tiling.cpp:Tiling 实现(含 N*M>UINT32_MAX 校验) - op_api/aclnn_addr_v2.cpp:aclnn 接口(含 CHECK_RET 空指针检查) - tests/ut/:4 个 UT 测试(tiling/infershape/op_api/inplace) - examples/test_aclnn_addr_v2.cpp:ST 示例 - README.md + docs/aclnnAddrV2&aclnnInplaceAddrV2.md:文档 ## 测试情况 - 精度:411/411 PASS(符合生态算子开源精度标准 experimental_standard.md,1.1-1.4 用例生成 + 2.x 误差指标) - UT:50/50 PASS(tiling 9 + infershape 17 + op_api 22 + inplace 2) - ST:1/1 PASS(examples 端到端) - 性能:对比 torch.addr 标杆,加速比 0.77/0.91/2.03 ≥ 0.6 达标 - 编译:-Werror 严格模式通过 ## 类型标签 - [x] 新特性 See merge request: cann/ops-math!4433 | 2 个月前 | |
feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Co-authored-by: qq_65982235<sunrubing0401@163.com> # message auto-generated for no-merge-commit merge: !4433 merge feature/addr_v2_pr into master feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Created-by: qq_65982235 Commit-by: qq_65982235 Merged-by: cann-robot Description: ## 描述 新增 addr_v2 自定义算子完整实现(A2/Ascend910B 平台),数学定义:out = beta * self + alpha * outer(vec1, vec2) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2425 ## 算子信息 - 支持数据类型:FP32 / FP16 / BF16 / INT8 / UINT8 / BOOL - 支持平台:Atlas A2 训练系列产品/Atlas A2 推理系列产品(ascend910b) - aclnn 接口:aclnnAddrV2 / aclnnInplaceAddrV2 ## 交付件 - op_kernel/addr_v2.cpp:Kernel 实现(3 分支 tilingKey,uint64_t GM 偏移) - op_host/arch22/addr_v2_tiling.cpp:Tiling 实现(含 N*M>UINT32_MAX 校验) - op_api/aclnn_addr_v2.cpp:aclnn 接口(含 CHECK_RET 空指针检查) - tests/ut/:4 个 UT 测试(tiling/infershape/op_api/inplace) - examples/test_aclnn_addr_v2.cpp:ST 示例 - README.md + docs/aclnnAddrV2&aclnnInplaceAddrV2.md:文档 ## 测试情况 - 精度:411/411 PASS(符合生态算子开源精度标准 experimental_standard.md,1.1-1.4 用例生成 + 2.x 误差指标) - UT:50/50 PASS(tiling 9 + infershape 17 + op_api 22 + inplace 2) - ST:1/1 PASS(examples 端到端) - 性能:对比 torch.addr 标杆,加速比 0.77/0.91/2.03 ≥ 0.6 达标 - 编译:-Werror 严格模式通过 ## 类型标签 - [x] 新特性 See merge request: cann/ops-math!4433 | 2 个月前 | |
feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Co-authored-by: qq_65982235<sunrubing0401@163.com> # message auto-generated for no-merge-commit merge: !4433 merge feature/addr_v2_pr into master feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Created-by: qq_65982235 Commit-by: qq_65982235 Merged-by: cann-robot Description: ## 描述 新增 addr_v2 自定义算子完整实现(A2/Ascend910B 平台),数学定义:out = beta * self + alpha * outer(vec1, vec2) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2425 ## 算子信息 - 支持数据类型:FP32 / FP16 / BF16 / INT8 / UINT8 / BOOL - 支持平台:Atlas A2 训练系列产品/Atlas A2 推理系列产品(ascend910b) - aclnn 接口:aclnnAddrV2 / aclnnInplaceAddrV2 ## 交付件 - op_kernel/addr_v2.cpp:Kernel 实现(3 分支 tilingKey,uint64_t GM 偏移) - op_host/arch22/addr_v2_tiling.cpp:Tiling 实现(含 N*M>UINT32_MAX 校验) - op_api/aclnn_addr_v2.cpp:aclnn 接口(含 CHECK_RET 空指针检查) - tests/ut/:4 个 UT 测试(tiling/infershape/op_api/inplace) - examples/test_aclnn_addr_v2.cpp:ST 示例 - README.md + docs/aclnnAddrV2&aclnnInplaceAddrV2.md:文档 ## 测试情况 - 精度:411/411 PASS(符合生态算子开源精度标准 experimental_standard.md,1.1-1.4 用例生成 + 2.x 误差指标) - UT:50/50 PASS(tiling 9 + infershape 17 + op_api 22 + inplace 2) - ST:1/1 PASS(examples 端到端) - 性能:对比 torch.addr 标杆,加速比 0.77/0.91/2.03 ≥ 0.6 达标 - 编译:-Werror 严格模式通过 ## 类型标签 - [x] 新特性 See merge request: cann/ops-math!4433 | 2 个月前 | |
feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Co-authored-by: qq_65982235<sunrubing0401@163.com> # message auto-generated for no-merge-commit merge: !4433 merge feature/addr_v2_pr into master feat(addr_v2): 新增 addr_v2 算子 A2 (Ascend910B) 实现 Created-by: qq_65982235 Commit-by: qq_65982235 Merged-by: cann-robot Description: ## 描述 新增 addr_v2 自定义算子完整实现(A2/Ascend910B 平台),数学定义:out = beta * self + alpha * outer(vec1, vec2) ## 关联的Issue https://gitcode.com/cann/ops-math/issues/2425 ## 算子信息 - 支持数据类型:FP32 / FP16 / BF16 / INT8 / UINT8 / BOOL - 支持平台:Atlas A2 训练系列产品/Atlas A2 推理系列产品(ascend910b) - aclnn 接口:aclnnAddrV2 / aclnnInplaceAddrV2 ## 交付件 - op_kernel/addr_v2.cpp:Kernel 实现(3 分支 tilingKey,uint64_t GM 偏移) - op_host/arch22/addr_v2_tiling.cpp:Tiling 实现(含 N*M>UINT32_MAX 校验) - op_api/aclnn_addr_v2.cpp:aclnn 接口(含 CHECK_RET 空指针检查) - tests/ut/:4 个 UT 测试(tiling/infershape/op_api/inplace) - examples/test_aclnn_addr_v2.cpp:ST 示例 - README.md + docs/aclnnAddrV2&aclnnInplaceAddrV2.md:文档 ## 测试情况 - 精度:411/411 PASS(符合生态算子开源精度标准 experimental_standard.md,1.1-1.4 用例生成 + 2.x 误差指标) - UT:50/50 PASS(tiling 9 + infershape 17 + op_api 22 + inplace 2) - ST:1/1 PASS(examples 端到端) - 性能:对比 torch.addr 标杆,加速比 0.77/0.91/2.03 ≥ 0.6 达标 - 编译:-Werror 严格模式通过 ## 类型标签 - [x] 新特性 See merge request: cann/ops-math!4433 | 2 个月前 |
AddrV2
产品支持情况
| 产品 | 是否支持 |
|---|---|
| Atlas 训练系列产品 | × |
| Atlas A2 训练系列产品/Atlas A2 推理系列产品 | √ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 | × |
| Ascend 950PR/Ascend 950DT | × |
功能说明
-
算子功能:求一维向量vec1和vec2的外积得到一个二维矩阵,并将外积结果矩阵乘一个系数后和自身乘系数相加后输出
-
计算公式:
out=β self+α (vec1⊗vec2)\text{out} = \beta\ \text{self} + \alpha\ (\text{vec1} \otimes\text{vec2}) out=β self+α (vec1⊗vec2)
参数说明
| 参数名 | 输入/输出/属性 | 描述 | 数据类型 | 数据格式 |
|---|---|---|---|---|
| x1 | 输入 | 待进行addr计算的入参,公式中的self。 | FLOAT、FLOAT16、BFLOAT16、INT8、UINT8、BOOL | ND |
| x2 | 输入 | 待进行addr计算的入参,公式中的vec1。 | FLOAT、FLOAT16、BFLOAT16、INT8、UINT8、BOOL | ND |
| x3 | 输入 | 待进行addr计算的入参,公式中的vec2。 | FLOAT、FLOAT16、BFLOAT16、INT8、UINT8、BOOL | ND |
| beta | 输入 | 待进行addr计算的入参,公式中的β。 | FLOAT、FLOAT16、BFLOAT16、INT8、UINT8、BOOL | ND |
| alpha | 输入 | 待进行addr计算的入参,公式中的α。 | FLOAT、FLOAT16、BFLOAT16、INT8、UINT8、BOOL | ND |
| y | 输出 | 待进行addr计算的出参,公式中的out。 | FLOAT、FLOAT16、BFLOAT16、INT8、UINT8、BOOL | ND |
- Atlas A2 训练系列产品/Atlas A2 推理系列产品:数据类型支持FLOAT、FLOAT16、DOUBLE、INT8、INT16、INT32、INT64、UINT8、BOOL、BFLOAT16。
约束说明
无
调用说明
| 调用方式 | 调用样例 | 说明 |
|---|---|---|
| aclnn调用 | test_aclnn_addr_v2 | 通过aclnnAddrV2/aclnnInplaceAddrV2接口方式调用AddrV2算子。 |