set_as
功能说明
设置或者改变Scalar的值。
函数原型
set_as(value, src_offset=None)
参数说明
支持的型号
Atlas 200/300/500 推理产品
Atlas 训练系列产品
Atlas推理系列产品(Ascend 310P处理器)AI Core
Atlas推理系列产品(Ascend 310P处理器)Vector Core
Atlas A2训练系列产品/Atlas 800I A2推理产品
Atlas 200/500 A2推理产品
注意事项
Atlas 200/300/500 推理产品:
- 不支持Scalar(float16)和Scalar(float32)之间相互赋值,仅支持同类型相互赋值,例如:Scalar(float16)和Scalar(float16)。
- 不支持Scalar(int/uint)和Scalar(float16/float32)之间的相互赋值。
- 支持Expr赋值给Scalar(int/uint),要求Expr中的Scalar类型为Scalar(int/uint),立即数类型为(int/float)。
- 不支持任何类型的Expr赋值给Scalar(float16/float32)。
Atlas 训练系列产品,不支持任何类型的Expr赋值给Scalar(float16)。
Atlas推理系列产品(Ascend 310P处理器)AI Core,不支持任何类型的Expr赋值给Scalar(float16)。
Atlas推理系列产品(Ascend 310P处理器)Vector Core,不支持任何类型的Expr赋值给Scalar(float16)。
Atlas A2训练系列产品/Atlas 800I A2推理产品 ,不支持任何类型的Expr赋值给Scalar(float16)。
Atlas 200/500 A2推理产品,不支持任何类型的Expr赋值给Scalar(float16)。
返回值
无
调用示例
from tbe import tik tik_instance = tik.Tik() #立即数:整数 index_reg = tik_instance.Scalar(dtype = "int32") index_reg.set_as(10) #立即数:float index_reg2 = tik_instance.Scalar(dtype = "float16") index_reg2.set_as(10.2) #Scalar变量 index_reg3 = tik_instance.Scalar(dtype = "float16") index_reg3.set_as(index_reg2) #Tensor某个值 data_A = tik_instance.Tensor("float16", (128,), name="data_A", scope=tik.scope_ubuf) index_reg3.set_as(data_A[0])//tensor的某个值 #Expr index_reg4 = tik_instance.Scalar(dtype = "int32") index_reg4.set_as(index_reg+20)
父主题: Scalar管理