InputScalar
功能说明
如果开发者在算子实现时不想将某标量定义为定值,想要使用算子运行时输入的值作为具体的值,此时可以将此标量定义为InputScalar类型,然后在BuildCCE的inputs参数中将此InputScalar对象作为输入。
函数原型
InputScalar(dtype="int64", name="input_scalar")
参数说明
参数名称 |
输入/输出 |
含义 |
---|---|---|
dtype |
输入 |
指定InputScalar对象的数据类型,取值: int8,uint8,int16,uint16,int32,uint32,int64, uint64,float16,float32 默认值:int64 |
name |
输入 |
InputScalar名字,支持string类型。名字支持数字0-9,A-Z,a-z及下划线组成的字符串,不允许以数字开头。 默认值:input_scalar,请每次进行命名以确保InputScalar没有重名。 |
支持的型号
Atlas 200/300/500 推理产品
Atlas 训练系列产品
Atlas推理系列产品(Ascend 310P处理器)AI Core
Atlas推理系列产品(Ascend 310P处理器)Vector Core
Atlas A2训练系列产品/Atlas 800I A2推理产品
Atlas 200/500 A2推理产品
注意事项
None.
调用示例
from tbe import tik tik_instance = tik.Tik() data_A = tik_instance.Tensor("float16", (128,), name="data_A", scope=tik.scope_gm) data_B = tik_instance.Tensor("float16", (128,), name="data_B", scope=tik.scope_gm) abc = tik_instance.InputScalar(dtype="int16", name="abc") src_ub = tik_instance.Tensor("float16", (128,), name="src_ub", scope=tik.scope_ubuf) dst_ub = tik_instance.Tensor("float16", (128,), name="dst_ub", scope=tik.scope_ubuf) tik_instance.vec_abs(128, dst_ub, src_ub, abc, 8, 8) tik_instance.BuildCCE(kernel_name="simple_add",inputs=[data_A,data_B,abc],outputs=[])
父主题: 数据定义