按element取自然底数:。
vec_expm1_high_preci(mask, dst, src, work_tensor, repeat_times, dst_rep_stride, src_rep_stride)
请参见参数说明。下面仅对dst/src/work_tensor参数进行说明:
dst/src/work_tensor数据类型保持一致,支持的数据类型为:Tensor(float16)
【work_tensor参数说明】:
work_tensor为用户定义的临时buffer空间,存储中间结果,空间限定在scope_ubuf,用于内部计算使用。
【work_tensor空间计算说明】:
【work_tensor空间计算举例】:
无
Atlas 200/300/500 推理产品
Atlas 训练系列产品
from tbe import tik tik_instance = tik.Tik() src_gm = tik_instance.Tensor("float16", (128,), name="src_gm", scope=tik.scope_gm) src_ub = tik_instance.Tensor("float16", (128,), name="src_ub", scope=tik.scope_ubuf) dst_gm = tik_instance.Tensor("float16", (128,), name="dst_gm", scope=tik.scope_gm) dst_ub = tik_instance.Tensor("float16", (128,), name="dst_ub", scope=tik.scope_ubuf) # 所需空间为 ((1-1)*8*16+128)*11=128*11 work_tensor_ub = tik_instance.Tensor("float16", (128*11,), name="work_tensor_ub", scope=tik.scope_ubuf) tik_instance.data_move(src_ub, src_gm, 0, 1, 8, 0, 0) tik_instance.vec_expm1_high_preci(128, dst_ub, src_ub, work_tensor_ub, 1, 8, 8) tik_instance.data_move(dst_gm, dst_ub, 0, 1, 8, 0, 0) tik_instance.BuildCCE(kernel_name="expm1", inputs=[src_gm], outputs=[dst_gm])
结果示例:
输入数据: [0, 1, 2, 3, ......] 输出数据: [0.0, 1.719, 6.391, 19.08, ......]