24.08
|
#include <TosaRefTensorHandle.hpp>
Public Member Functions | |
TosaRefTensorHandle (const TensorInfo &tensorInfo, std::shared_ptr< TosaRefMemoryManager > &memoryManager) | |
TosaRefTensorHandle (const TensorInfo &tensorInfo, MemorySourceFlags importFlags) | |
~TosaRefTensorHandle () | |
virtual void | Manage () override |
Indicate to the memory manager that this resource is active. More... | |
virtual void | Allocate () override |
Indicate to the memory manager that this resource is no longer active. More... | |
virtual ITensorHandle * | GetParent () const override |
Get the parent tensor if this is a subtensor. More... | |
virtual const void * | Map (bool) const override |
Map the tensor data for access. More... | |
virtual void | Unmap () const override |
Unmap the tensor data. More... | |
TensorShape | GetStrides () const override |
Get the strides for each dimension ordered from largest to smallest where the smallest value is the same as the size of a single element in the tensor. More... | |
TensorShape | GetShape () const override |
Get the number of elements for each dimension ordered from slowest iterating dimension to fastest iterating dimension. More... | |
const TensorInfo & | GetTensorInfo () const |
virtual MemorySourceFlags | GetImportFlags () const override |
Get flags describing supported import sources. More... | |
virtual bool | Import (void *memory, MemorySource source) override |
Import externally allocated memory. More... | |
virtual bool | CanBeImported (void *memory, MemorySource source) override |
Implementations must determine if this memory block can be imported. More... | |
virtual const void * | Map (bool blocking=true) const=0 |
Map the tensor data for access. More... | |
void * | Map (bool blocking=true) |
Map the tensor data for access. More... | |
Public Member Functions inherited from ITensorHandle | |
virtual | ~ITensorHandle () |
void * | Map (bool blocking=true) |
Map the tensor data for access. More... | |
void | Unmap () |
Unmap the tensor data that was previously mapped with call to Map(). More... | |
virtual void | Unimport () |
Unimport externally allocated memory. More... | |
virtual std::shared_ptr< ITensorHandle > | DecorateTensorHandle (const TensorInfo &tensorInfo) |
Returns a decorated version of this TensorHandle allowing us to override the TensorInfo for it. More... | |
Definition at line 15 of file TosaRefTensorHandle.hpp.
TosaRefTensorHandle | ( | const TensorInfo & | tensorInfo, |
std::shared_ptr< TosaRefMemoryManager > & | memoryManager | ||
) |
Definition at line 10 of file TosaRefTensorHandle.cpp.
TosaRefTensorHandle | ( | const TensorInfo & | tensorInfo, |
MemorySourceFlags | importFlags | ||
) |
Definition at line 21 of file TosaRefTensorHandle.cpp.
~TosaRefTensorHandle | ( | ) |
Definition at line 31 of file TosaRefTensorHandle.cpp.
|
overridevirtual |
Indicate to the memory manager that this resource is no longer active.
This is used to compute overlapping lifetimes of resources.
Implements ITensorHandle.
Definition at line 54 of file TosaRefTensorHandle.cpp.
References TensorInfo::GetNumBytes().
|
overridevirtual |
Implementations must determine if this memory block can be imported.
This might be based on alignment or memory source type.
Reimplemented from ITensorHandle.
Definition at line 172 of file TosaRefTensorHandle.cpp.
References TensorInfo::GetDataType(), armnn::GetDataTypeSize(), and armnn::Malloc.
Referenced by TosaRefTensorHandle::Import().
|
inlineoverridevirtual |
Get flags describing supported import sources.
Reimplemented from ITensorHandle.
Definition at line 54 of file TosaRefTensorHandle.hpp.
|
inlineoverridevirtual |
Get the parent tensor if this is a subtensor.
Implements ITensorHandle.
Definition at line 28 of file TosaRefTensorHandle.hpp.
|
inlineoverridevirtual |
Get the number of elements for each dimension ordered from slowest iterating dimension to fastest iterating dimension.
Implements ITensorHandle.
Definition at line 44 of file TosaRefTensorHandle.hpp.
References TensorInfo::GetShape().
|
inlineoverridevirtual |
Get the strides for each dimension ordered from largest to smallest where the smallest value is the same as the size of a single element in the tensor.
Implements ITensorHandle.
Definition at line 39 of file TosaRefTensorHandle.hpp.
References armnn::GetUnpaddedTensorStrides().
|
inline |
Definition at line 49 of file TosaRefTensorHandle.hpp.
|
overridevirtual |
Import externally allocated memory.
memory | base address of the memory being imported. |
source | source of the allocation for the memory being imported. |
Reimplemented from ITensorHandle.
Definition at line 129 of file TosaRefTensorHandle.cpp.
References TosaRefTensorHandle::CanBeImported(), and armnn::Malloc.
|
overridevirtual |
Indicate to the memory manager that this resource is active.
This is used to compute overlapping lifetimes of resources.
Implements ITensorHandle.
Definition at line 43 of file TosaRefTensorHandle.cpp.
References ARMNN_THROW_MSG_IF_FALSE, and TensorInfo::GetNumBytes().
|
inline |
Map the tensor data for access.
Must be paired with call to Unmap().
blocking | hint to block the calling thread until all other accesses are complete. (backend dependent) |
Definition at line 44 of file ITensorHandle.hpp.
virtual const void* Map |
Map the tensor data for access.
blocking | hint to block the calling thread until all other accesses are complete. (backend dependent) |
|
overridevirtual |
Map the tensor data for access.
blocking | hint to block the calling thread until all other accesses are complete. (backend dependent) |
Implements ITensorHandle.
Definition at line 80 of file TosaRefTensorHandle.cpp.
|
inlineoverridevirtual |
Unmap the tensor data.
Implements ITensorHandle.
Definition at line 36 of file TosaRefTensorHandle.hpp.