下载
中文
注册

Tensor构造函数

函数功能

用于构造指定的Tensor对象。Tensor类用来描述一个tensor对象的信息以及行为,包含:shape信息、format信息、datatype信息以及tensor数据内容tensordata。

函数原型

Tensor() //默认构造函数

Tensor (const StorageShape &storage_shape, const StorageFormat &storage_format, const TensorPlacement placement, const ge::DataType data_type, TensorAddress addr)

Tensor(const StorageShape &storage_shape, const StorageFormat &storage_format, ge::DataType data_type)

Tensor(const StorageShape &storage_shape, const StorageFormat &storage_format, const TensorPlacement placement, const ge::DataType data_type, TensorAddress addr, TensorAddrManager manager)

参数说明

参数

输入/输出

说明

storage_shape

输入

指定tensor的shape信息。

storage_format

输入

指定tensor的format信息。

placement

输入

指定tensor的实际数据所存储的device位置。

data_type

输入

指定tensor的datatype信息。

addr

输入

指定tensor的实际数据所存储的内存地址。

manager

输入

tensor data的管理函数,若manager为空,则认为addr就是tensor的数据地址,且此数据不需要被释放。

using TensorAddrManager = ge::graphStatus (*)(TensorAddress addr, TensorOperateType operate_type, void **out);
enum TensorOperateType {
  kGetTensorAddress,  ///< 获取Tensor的地址  
  kFreeTensor,        ///< 释放Tensor  
  kPlusShareCount,    ///< 共享Tensor  
  kTensorOperateType
};

返回值说明

返回一个初始化的Tensor对象。

约束说明

Tensor中的成员(format、shape等)的值均需要显示设置,否则均为未定义值。

调用示例

Tensor tensor{{{8, 3, 224, 224}, {16, 3, 224, 224}},       // shape                
              {ge::FORMAT_ND, ge::FORMAT_FRACTAL_NZ, {}},  // format                              
              kFollowing,                                  // placement                
              ge::DT_FLOAT16,                              //dt                
              nullptr};