当前位置: 首页 > news >正文

CANN/cann-bench: 加除乘复合算子

ForeachAddcdivScalar 算子 API 描述

【免费下载链接】cann-bench评测AI在处理CANN领域代码任务的能力,涵盖算子生成、算子优化等领域,支撑模型选型、训练效果评估,统一量化评估标准,识别Agent能力短板,构建CANN领域评测平台,推动AI能力在CANN领域的持续演进。项目地址: https://gitcode.com/cann/cann-bench

1. 算子简介

ForeachAddcdivScalar 算子对多个张量列表进行逐元素的加、除、乘复合操作,是优化器(如 Adam)中常用的基础运算。

主要应用场景

  • Adam / AdamW 优化器的参数更新步骤
  • 需要对多组参数同时执行 addcdiv 运算的场景
  • 分布式训练中的批量参数更新

算子特征

  • 难度等级:L1(FusedComposite)
  • 三组 TensorList 输入,逐元素复合运算,输出 TensorList 与输入 shape 一致

2. 算子定义

数学公式

对列表中第 $i$ 个张量:

$$ y_i = x1_i + \frac{x2_i}{x3_i} \cdot scalar $$

3. 接口规范

算子原型

cann_bench.foreach_addcdiv_scalar(Tensor[] x1, Tensor[] x2, Tensor[] x3, float scalar) -> Tensor[] y

输入参数说明

参数类型默认值描述
x1Tensor[]必选第 1 个输入张量列表(TensorList),被加数
x2Tensor[]必选第 2 个输入张量列表(TensorList),被除数的分子
x3Tensor[]必选第 3 个输入张量列表(TensorList),被除数的分母
scalarfloat必选缩放因子

输出

参数Shapedtype描述
y与输入 TensorList 各元素 shape 相同与输入 dtype 相同逐元素复合运算结果列表

数据类型

输入 dtype输出 dtype
float16float16
float32float32
bfloat16bfloat16

规则与约束

  • x1、x2、x3 三个 TensorList 长度必须相同
  • 对应位置的张量 shape 必须一致
  • 列表中各张量的 dtype 须一致
  • x3 中的元素不应为零(除以零会产生 inf/nan)

4. 精度要求

采用生态算子精度标准进行验证。

误差指标

  1. 平均相对误差(MERE):采样点中相对误差平均值

    $$ \text{MERE} = \text{avg}(\frac{\text{abs}(actual - golden)}{\text{abs}(golden)+\text{1e-7}}) $$

  2. 最大相对误差(MARE):采样点中相对误差最大值

    $$ \text{MARE} = \max(\frac{\text{abs}(actual - golden)}{\text{abs}(golden)+\text{1e-7}}) $$

通过标准

数据类型FLOAT16BFLOAT16FLOAT32HiFLOAT32FLOAT8 E4M3FLOAT8 E5M2
通过阈值(Threshold)2^-102^-72^-132^-112^-32^-2

当平均相对误差 MERE < Threshold,最大相对误差 MARE < 10 * Threshold 时判定为通过。

5. 标准 Golden 代码

import torch from typing import List def foreach_addcdiv_scalar( x1: List[torch.Tensor], x2: List[torch.Tensor], x3: List[torch.Tensor], scalar: float ) -> List[torch.Tensor]: """ 对多个张量进行逐元素加、乘、除操作 公式:y_i = x1_i + (x2_i / x3_i) * scalar Args: x1: 第 1 个输入张量列表 (TensorList) x2: 第 2 个输入张量列表 (TensorList) x3: 第 3 个输入张量列表 (TensorList) scalar: 缩放因子 Returns: 输出张量列表 """ y = [x1_i + (x2_i / x3_i) * scalar for x1_i, x2_i, x3_i in zip(x1, x2, x3)] return y

6. 额外信息

算子调用示例

import torch import cann_bench x1 = [torch.randn(1024, 1024, dtype=torch.float32, device="npu")] x2 = [torch.randn(1024, 1024, dtype=torch.float32, device="npu")] x3 = [torch.rand(1024, 1024, dtype=torch.float32, device="npu") + 0.1] # 避免除零 y = cann_bench.foreach_addcdiv_scalar(x1, x2, x3, scalar=1.0)

【免费下载链接】cann-bench评测AI在处理CANN领域代码任务的能力,涵盖算子生成、算子优化等领域,支撑模型选型、训练效果评估,统一量化评估标准,识别Agent能力短板,构建CANN领域评测平台,推动AI能力在CANN领域的持续演进。项目地址: https://gitcode.com/cann/cann-bench

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.jsqmd.com/news/783288/

相关文章:

  • CANN/HCCL算法分析器使用指南
  • 2026办理腾讯企业邮箱服务,靠谱销售电话查询方式全解析 - 品牌2025
  • AI道德地位:从工具到伙伴的认知转变与设计伦理
  • Balena Etcher终极指南:三分钟学会安全烧录系统镜像
  • 基于SVR与特征选择的系外行星半径预测:数据清洗、模型构建与天文解读
  • Python发布成AIP接口服务的几种方式
  • 非洲AI本土化实践:医疗、农业、金融、教育四大领域创新与挑战
  • 信贷风控中可解释AutoML实践:用SHAP与H2O实现透明AI决策
  • 2026年成都水刀配件厂家与水刀易损件采购完全指南:源头厂商直达+品牌深度横评 - 企业名录优选推荐
  • 2026数据资产入表解决方案(52页 PPT)
  • 零基础部署 OpenClaw v2.7.1,自动化操作电脑
  • chatgpt入口 chatgpt的一些python调用方法
  • 贵阳新房装修怎么选?5大中高端室内设计公司对比与选购指南 - 优质企业观察收录
  • 2026年贵阳室内全案设计与精装整装深度横评:五大品牌设计落地与工程保障对标指南 - 优质企业观察收录
  • 第五篇:锻造大脑——为什么算法公开,你却造不出 GPT?
  • 天津祥和景观工程:红桥景观花镜设计公司有哪些 - LYL仔仔
  • 联邦学习与Transformer在CV与安全领域的融合应用与实战解析
  • 国产OpenClaw智能体推荐:企业级国产OpenClaw智能体厂商全解析 - 品牌2025
  • 网盘直链下载助手完整指南:告别限速,解锁九大网盘真实下载链接
  • CANN 全国挑战赛 2025
  • 分析原设计的问题
  • 微波马弗炉推荐品牌及核心参数解析 - 品牌推荐大师
  • VADER框架:将模糊AI法规转化为可量化技术指标的方法论
  • 广州亿源贸易商行:南沙茅台回收公司 - LYL仔仔
  • 长期使用中观察到的Taotoken账单明细与成本分析价值
  • CANN/cann-learning-hub:HIXL在RL推理中的长尾时延优化
  • CANN/hccl集合通信AlltoAllVC
  • 终极APA第7版格式转换指南:3分钟解决学术论文引用难题
  • 阿里云邮箱华东区域服务商有哪些?2026靠谱服务商推荐 - 品牌2025
  • 2026年成都水刀配件采购指南:从易损件困局到一站式解决方案 - 企业名录优选推荐