文件最后提交记录最后更新时间
abs等算子A5实现 Co-authored-by: ly_cann_coder<liyao152@huawei.com> # message auto-generated for no-merge-commit merge: !495 merge develop into master abs等算子A5实现 Created-by: ly_cann_coder Commit-by: ly_cann_coder Merged-by: cann-robot Description: ## 描述 新增以下算子的A5实现 |序号| 算子 | 功能 | |--|--|--| |1| abs | 为输入张量的每一个元素取绝对值 | |2| add | 对输入完成相加操作 | |3| addcdiv | 张量运算函数,用于执行乘除加组合操作,将张量除法(带缩放)+ 张量加法合并为单个操作 | |4| addcmul | 张量运算函数,用于执行乘除加组合操作,将张量乘法(带缩放)+ 张量加法合并为单个操作 | |5| axpy | 源操作数中每个元素与标量求积后和目的操作数中的对应元素相加 | |6| bincount | 计算非负整数数组中每个数的频率 | |7| ceil | 返回输入tensor中每个元素向上取整的结果 | |8| clip_by_value_v2 | 将输入的所有元素限制在一定范围内 | |9| concat | 用于沿指定维度将多个输入 Tensor 进行拼接,输出包含所有输入数据按顺序拼接后的 Tensor | |10| concat_v2 | 用于沿指定维度将多个输入 Tensor 进行拼接,输出包含所有输入数据按顺序拼接后的 Tensor | |11| equal | 计算两个Tensor是否有相同的大小和元素,返回一个Bool类型 | |12|exp|返回一个新的张量,该张量的每个元素都是输入张量对应元素的指数| |13| fill | 对张量进行填充操作,支持非连续的Tensor操作 | |14| floor | 返回输入Tensor中每个元素向下取整,并将结果回填到输入Tensor中 | |15| floor_div | 完成除法计算,对余数向下取整 | |16| floor_mod | 用于计算两个数的模 | |17| is_neg_inf | 判断输入张量的元素是否为负无穷 | |18| is_pos_inf | 判断输入张量的元素是否为正无穷 | |19| less | 判断输入self中的每个元素是否小于输入other的值,返回一个Bool类型的Tensor | |20| less_equal | 判断输入self中的元素值是否小于等于other的值,并将self的每个元素的值与other值的比较结果写入out中 | |21| logical_and | 对两个输入张量的对应元素执行「与逻辑」判断,输出布尔型张量(True/False) | |22| log | 对输入张量x的元素,逐元素进行对数计算,并将结果保存到输出张量y中 | |23| not_equal | 逐元素比较两个输入张量是否不相等 | |24| ones_like | 返回形状和类型相同的张量,所有元素都设置为1 | |25|sign|对输入的tensor逐元素进行Sign符号函数的运算并输出结果tensor| |26| sqrt | 完成非负数平方根计算,负数情况返回nan | |27| sqrt_grad | 完成梯度平方根计算 | |28| square | 为输入张量的每一个元素计算平方值 | |29| squared_difference | 为第一个输入张量减去第二个输入张量,并计算其平方值 | |30| tanh | 激活函数,返回与输入tensor shape相同的tensor,对输入tensor进行elementwise的计算 | |31| tril | 将输入的self张量的最后二维(按shape从左向右数)沿对角线的右上部分置零 | |32| triu | 将输入的self张量的最后二维(按shape从左向右数)沿对角线的左下部分置零 | |33| zeros_like | 将张量填充为全零 | ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [x] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-math!4955 个月前
新增 Acosh/Atanh/Exp 算子 AICPU 实现 Co-authored-by: Ding_Jing<dingjing19@huawei.com> # message auto-generated for no-merge-commit merge: !2781 merge acosh_atanh_exp into master 新增 Acosh/Atanh/Exp 算子 AICPU 实现 Created-by: Ding_Jing Commit-by: Ding_Jing Merged-by: cann-robot Description: ## 描述 本次 PR 将 Acosh、Atanh、Exp 三个算子从 canndev 迁移到 ops-math,并新增 AICPU 实现。 ### 主要变更 1. **新增算子 AICPU 实现** - math/acosh/: Acosh 算子(反双曲余弦) - math/atanh/: Atanh 算子(反双曲正切) - math/exp/: Exp 算子(指数函数) 2. **目录结构** - op_graph/<op>_proto.h: IR proto 定义 - op_kernel_aicpu/<op>_aicpu.h/cpp: AICPU 计算核实现 - op_kernel_aicpu/<op>_aicpu_def.cpp: OP_ADD 注册 - op_api/<op>.h/cpp, op_api/aclnn_<op>.h/cpp: aclnn 主机侧 API - tests/ut/op_kernel_aicpu/test_<op>.cpp: AICPU 单元测试 - examples/test_geir_<op>.cpp: 示例代码 3. **测试验证** - AICPU UT: 16/16 PASSED - 自定义算子包构建和安装成功 - Example 执行验证通过(graph 模式) ## 关联的Issue #1577 ## 测试 根据代码变更,测试场景如下: ### 1. AICPU 单元测试 ```bash bash build.sh -u --opkernel_aicpu --ops=acosh,atanh,exp --soc=ascend910b ``` - 验证所有算子的 AICPU 实现正确性 - **结果**: 16/16 PASSED ### 2. 自定义算子包构建 ```bash bash build.sh --pkg --soc=ascend910b --vendor_name=custom --ops=acosh,atanh,exp ``` - 验证算子能正确构建为自定义算子包 - **结果**: 成功生成 cann-ops-math-custom_linux-aarch64.run ### 3. 算子包安装验证 ```bash # 安装 .run 包 ./build_out/cann-ops-math-custom_linux-aarch64.run ``` - 验证算子包能正确安装到 CANN 环境 - **结果**: 安装成功到 /home/developer/Ascend/cann-9.0.0/opp/vendors/custom_math/ ### 4. 算子加载测试 ```bash # 执行 example 验证算子加载 bash build.sh --run_example acosh graph cust --vendor_name=custom --soc=ascend910b bash build.sh --run_example atanh graph cust --vendor_name=custom --soc=ascend910b ``` - 验证算子接口注册成功 - 验证 AICPU 调度路径正确(使用 aicpu_custom_scheduler) - **结果**: 所有算子数学计算正确,AICPU 调度验证通过 ### 5. 日志验证 - 设置 ASCEND_GLOBAL_LOG_LEVEL=0 捕获详细日志 - 确认算子注册日志:Kernel[<Op>] register successfully - 确认算子执行日志:RunCpuKernel[<Op>] success ## 文档更新 - ✅ 更新 docs/zh/op_list.md,新增 Acosh、Atanh、Exp 算子说明 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述:算子迁移 See merge request: cann/ops-math!278113 天前