Overview

TensorData is a tensor data management class. It is used to record the address, size, and storage location (TensorPlacement) of a tensor, supports tensor sharing and ownership release, and manages the lifecycle of a tensor.

Header Files to Be Included

1
#include <tensor_data.h>

Public Member Functions

explicit TensorData(TensorAddress addr = nullptr, const TensorAddrManager manager = nullptr)
explicit TensorData(TensorAddress addr, const TensorAddrManager manager, size_t size, TensorPlacement placement)
TensorData(TensorData &&other) noexcept
TensorData(const TensorData &) = delete
~TensorData
TensorData& operator= (const TensorData &other)=delete
TensorData& operator= (TensorData &&other) noexcept
TensorAddress GetAddr() const
size_t GetSize() const
void SetSize(const size_t size)
TensorPlacement GetPlacement() const
void SetPlacement(const TensorPlacement placement)
ge::graphStatus Free()
ge::graphStatus SetAddr(const ConstTensorAddressPtr addr, TensorAddrManager manager)
bool IsSharedWith(const TensorData &other) const
ge::graphStatus ShareFrom(const TensorData &other)
TensorAddress Release(TensorAddrManager &manager)