Math API样例介绍

概述

本样例集介绍了Math API不同特性的典型用法,给出了对应的端到端实现。

算子开发样例

目录名称 功能描述
acos 本样例演示了基于Acos高阶API的算子实现。样例按元素做反余弦函数计算
acosh 本样例演示了基于Acosh高阶API的算子实现。样例按元素做双曲反余弦函数计算
addcdiv 本样例通过Ascend C编程语言实现了Addcdiv算子,使用<<<>>>内核调用符来完成算子核函数在NPU侧运行验证的基础流程
asin 本样例演示了基于Asin高阶API的算子实现。样例按元素做反正弦函数计算
asinh 本样例演示了基于Asinh高阶API的算子实现。样例按元素做反双曲正弦函数计算
atanh 本样例演示了基于Atanh高阶API的算子实现。样例按元素做反双曲正切余弦函数计算
axpy_half_float 本样例基于Axpy实现源操作数src中每个元素与标量求积后和目的操作数dst中的对应元素相加的功能。Axpy接口的源操作数和目的操作数的数据类型只能取三种组合:(half, half)、(float, float)、(half, float)。本样例中输入tensor和标量的数据类型为half,输出tensor数据类型为float。本样例通过Ascend C编程语言实现了Axpy算子,使用<<<>>>内核调用符来完成算子核函数在NPU侧运行验证的基础流程,给出了对应的端到端实现
bitwiseand 本样例演示了基于BitwiseAnd高阶API的算子实现。样例逐比特对两个输入进行与操作
bitwisenot 本样例演示了基于BitwiseNot高阶API的算子实现。样例逐比特对输入进行取反
bitwiseor 本样例演示了基于BitwiseOr高阶API的算子实现。样例逐比特对两个输入进行或操作
bitwisexor 本样例演示了基于BitwiseXor高阶API的算子实现。样例逐比特对两个输入进行异或操作
axpy_half_half 本样例基于Axpy实现源操作数src中每个元素与标量求积后和目的操作数dst中的对应元素相加的功能。Axpy接口的源操作数和目的操作数的数据类型只能取三种组合:(half, half)、(float, float)、(half, float)。本样例中输入tensor、标量、输出tensor数据类型均为half。本样例通过Ascend C编程语言实现了Axpy算子,使用<<<>>>内核调用符来完成算子核函数在NPU侧运行验证的基础流程,给出了对应的端到端实现
cast 本样例基于Cast实现数据精度转换,根据源操作数和目的操作数Tensor的数据类型进行精度转换
cast_int4b_t 本样例基于Cast实现int4b_t类型的数据精度转换,进行half类型源操作数和int4b_t类型目的操作数Tensor之间的精度转换
ceil 本样例演示了基于Ceil高阶API的算子实现。样例获取大于或等于x的最小的整数值,即向正无穷取整操作
clamp 本样例演示了基于Clamp高阶API的算子实现。将输入中非nan且超出[min, max]范围的值剪裁至max或min,若min>max,则所有非nan值均置为max
clampmax 本样例演示了基于ClampMax高阶API的算子实现。样例将srcTensor中大于scalar的数替换为scalar,小于等于scalar的数保持不变,作为dstTensor输出
clampmin 本样例演示了基于ClampMin高阶API的算子实现。样例将srcTensor中小于scalar的数替换为scalar,大于等于scalar的数保持不变,作为dstTensor输出
cos 本样例介绍了调用Cos高阶API实现cos算子,并按照核函数直调的方式给出了对应的端到端实现
cosh 本样例演示了基于Cosh高阶API的算子实现。样例按元素做双曲余弦函数计算
cumsum 本样例介绍了调用CumSum高阶API实现cumsum单算子,用于对输入张量按行或列进行累加和操作
erf 本样例演示了基于Erf高阶API的算子实现。样例按元素做误差函数计算
erfc 本样例演示了基于Erfc高阶API的算子实现。样例返回输入x的互补误差函数结果,积分区间为x到无穷大
exp 本样例演示了基于Exp高阶API的算子实现。样例按元素取自然指数,用户可以选择是否使用泰勒展开公式进行计算
floor 本样例演示了基于Floor高阶API的算子实现。样例获取小于或等于x的最小的整数值,即向负无穷取整操作
fma 本样例演示了基于Fma高阶API的算子实现。样例按元素计算两个输入相乘后与第三个输入相加的结果
fmod 本样例演示了基于Fmod高阶API的算子实现。样例按元素计算两个浮点数a, b相除后的余数
frac 本样例演示了基于Frac高阶API的算子实现。样例按元素做取小数计算
isfinite 本样例演示了基于IsFinite高阶API的算子实现。样例按元素判断输入的浮点数是否非NAN、非INF,输出结果为浮点数或者布尔值
isinf 本样例演示了基于IsInf高阶API的算子实现。样例按元素判断输入的浮点数是否为 ±\pm inf,输出结果为浮点数或布尔值
isnan 本样例演示了基于IsNan高阶API的算子实现。样例按元素判断输入的浮点数是否为nan,输出结果为浮点数或布尔值
lgamma 本样例演示了基于Lgamma高阶API的算子实现。样例按元素计算x的gamma函数的绝对值并求自然对数
log 本样例演示了基于Log高阶API的算子实现。样例按元素以e、2、10为底做对数运算
logicaland 本样例演示了基于LogicalAnd高阶API的算子实现。样例按元素进行与操作,输入数据类型不是bool时,零被视为False,非零数据被视为True
logicalands 本样例演示了基于LogicalAnds高阶API的算子实现。样例对输入矢量内的每个元素和标量进行与操作
logicalnot 本样例演示了基于LogicalNot高阶API的算子实现。样例按元素进行取反操作,输入数据类型不是bool时,零被是被Flase,非零数据被视为True
logicalor 本样例演示了基于LogicalOr高阶API的算子实现。样例按元素进行或操作功能,输入数据类型不是bool时,零被视为False,非零数据被视为True
logicalors 本样例演示了基于LogicalOrs高阶API的算子实现。样例对输入矢量内的每个元素和标量进行或操作
logicalxor 本样例演示了基于LogicalXor高阶API的算子实现。样例按元素进行异或操作功能,输入数据类型不是bool时,零被视为False,非零数据被视为True
power 本样例演示了基于Power高阶API的算子实现。样例实现按元素做幂运算功能,支持三种功能:指数和底数分别为张量对张量、张量对标量、标量对张量的幂运算
rint 本样例演示了基于Rint高阶API的算子实现。样例获取与输入数据最接近的整数,若存在两个相同接近的整数,则获取其中的偶数
round 本样例演示了基于Round高阶API的算子实现。样例将输入的元素四舍五入到最接近的整数
sign 本样例演示了基于Sign高阶API的算子实现。样例按元素执行Sign操作,返回输入数据的符号
sincos 本样例演示了基于SinCos高阶API的算子实现。样例按元素进行正弦计算和余弦计算,分别获得正弦和余弦的结果
sinh 本样例演示了基于Sinh高阶API的算子实现。样例按元素做双曲正弦函数计算
tan 本样例演示了基于Tan高阶API的算子实现。样例按元素做正切函数计算
trunc 本样例演示了基于Trunc高阶API的算子实现。样例按元素做浮点数截断,即向零取整操作
where 本样例演示了基于Where高阶API的算子实现。样例根据指定的条件,从两个源操作数中选择元素,生成目标操作数。两个源操作数均可以是LocalTensor或标量
xor 本样例演示了基于Xor高阶API的算子实现。样例按元素执行Xor运算