三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

CANN:PyPTO Exp算子测试

CANN:PyPTO Exp算子测试

Exp PyPTO Selected-Case API 描述

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

1. 任务范围

本任务是 PyPTO 专用的 Exp selected-case benchmark,路径为bench_lab/pypto_cann_bench/exp。它只要求覆盖当前目录cases.yaml/cases.csv中列出的测试集。

覆盖范围:

  • case_id: 2, 8, 15
  • 输入 dtype: float32
  • 输入 rank: 2D
  • 输出 shape: 与输入x相同
  • 输出 dtype: float32

2. 算子定义

接口:

cann_bench.exp(Tensor x, float base, float scale, float shift) -> Tensor y

数学语义:

base <= 0: y = exp(scale * x + shift) base > 0: y = exp((scale * x + shift) * ln(base))

参数说明:

参数类型默认值描述
xTensor必选float32 2D 输入张量
basefloat-1.0指数底数;base <= 0表示自然底数e
scalefloat1.0输入缩放因子
shiftfloat0.0输入偏移量

3. Selected Cases

case_idshapedtypeattrsvalue_range
2[2048, 2048]float32{base: -1.0, scale: 1.5, shift: 0.0}[-2, 2]
8[1537, 769]float32{base: 10.0, scale: 1.0, shift: 0.0}[-5, 10]
15[512, 2049]float32{base: -1.0, scale: 1.0, shift: 0.5}[-0.5, 0.5]

4. 精度要求

采用当前 cann-bench / kernel_eval 对 float32 selected cases 的默认精度判定。实现应按golden.py的计算语义返回逐元素指数结果。

5. Golden 代码

import torch def exp( x: torch.Tensor, base: float = -1.0, scale: float = 1.0, shift: float = 0.0 ) -> torch.Tensor: temp = scale * x + shift if base > 0: temp = temp * torch.log(torch.tensor(base, dtype=x.dtype, device=x.device)) return torch.exp(temp)

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

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

← 返回列表