函数原型
set_as(value, dst_offset=0, src_offset=None)
参数说明
表1 参数说明
参数名称 |
输入/输出 |
含义 |
value |
输入 |
待设置的值。支持的数据类型:
- Tensor类型,要求Tensor 只有一个元素,否则取该Tensor的第一个元素。Tesnor的scope有如下约束:
Atlas 200/300/500 推理产品,Tensor的scope 只能是scope_ubuf Atlas 训练系列产品,Tensor的scope 只能是scope_ubuf Atlas推理系列产品AI Core,Tensor的scope可以是scope_ubuf和scope_gm Atlas推理系列产品Vector Core,Tensor的scope可以是scope_ubuf和scope_gm Atlas A2训练系列产品,Tensor的scope可以是scope_ubuf和scope_gm
|
dst_offset |
输入 |
保留参数,不建议使用。 |
src_offset |
输入 |
保留参数,不建议使用。 |
支持的型号
Atlas 200/300/500 推理产品
Atlas 训练系列产品
Atlas推理系列产品AI Core
Atlas推理系列产品Vector Core
Atlas A2训练系列产品
注意事项
- Scalar赋值给Tensor时必须保证两者数据类型一致。
- 目的Tensor的类型只支持scope_ubuf。
- 只会对目的Tensor的第一个元素进行改变。
- 支持Expr赋值给Tensor(int/uint),要求Expr中的Scalar类型为Scalar(int/uint),立即数类型为(int/float)。
- Atlas 200/300/500 推理产品,不支持任何类型的Expr赋值给Scalar(float16/float32)。
Atlas 训练系列产品,不支持任何类型的Expr赋值给Scalar(float16)。
Atlas推理系列产品AI Core,不支持任何类型的Expr赋值给Scalar(float16)。
Atlas推理系列产品Vector Core,不支持任何类型的Expr赋值给Scalar(float16)。
Atlas A2训练系列产品,不支持任何类型的Expr赋值给Scalar(float16)。
调用示例
from tbe import tik
tik_instance = tik.Tik()
data_A = tik_instance.Tensor("float16", (128,), name="data_A", scope=tik.scope_ubuf)
data_B = tik_instance.Tensor("float16", (128,), name="data_A", scope=tik.scope_ubuf)
data_A[0].set_as(data_B[0:1])