From 1f58f03d82c482626b1b4673b6c0e25da4338fb5 Mon Sep 17 00:00:00 2001 From: James Conroy Date: Tue, 27 Apr 2021 17:13:27 +0100 Subject: IVGCVSW-5815 Generalise ConstCpuTensorHandle * Generalises ConstCpuTensorHandle and inherited classes by removing 'Cpu' from aliases. * New renamed classes: ConstTensorHandle, TensorHandle, ScopedTensorHandle, PassthroughTensorHandle, ConstPassthroughTensorHandle. Signed-off-by: James Conroy Change-Id: I1824e0e134202735fb77051f20a7252f161dfe16 --- src/backends/backendsCommon/CpuTensorHandle.cpp | 141 ------------------------ 1 file changed, 141 deletions(-) delete mode 100644 src/backends/backendsCommon/CpuTensorHandle.cpp (limited to 'src/backends/backendsCommon/CpuTensorHandle.cpp') diff --git a/src/backends/backendsCommon/CpuTensorHandle.cpp b/src/backends/backendsCommon/CpuTensorHandle.cpp deleted file mode 100644 index 192469a633..0000000000 --- a/src/backends/backendsCommon/CpuTensorHandle.cpp +++ /dev/null @@ -1,141 +0,0 @@ -// -// Copyright © 2017 Arm Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// -#include -#include - -#include - -#include - -namespace armnn -{ - -TensorShape GetUnpaddedTensorStrides(const TensorInfo& tensorInfo) -{ - TensorShape shape(tensorInfo.GetShape()); - auto size = GetDataTypeSize(tensorInfo.GetDataType()); - auto runningSize = size; - std::vector strides(shape.GetNumDimensions()); - auto lastIdx = shape.GetNumDimensions()-1; - for (unsigned int i=0; i < lastIdx ; i++) - { - strides[lastIdx-i] = runningSize; - runningSize *= shape[lastIdx-i]; - } - strides[0] = runningSize; - return TensorShape(shape.GetNumDimensions(), strides.data()); -} - -ConstCpuTensorHandle::ConstCpuTensorHandle(const TensorInfo& tensorInfo) -: m_TensorInfo(tensorInfo) -, m_Memory(nullptr) -{ -} - -template <> -const void* ConstCpuTensorHandle::GetConstTensor() const -{ - return m_Memory; -} - -CpuTensorHandle::CpuTensorHandle(const TensorInfo& tensorInfo) -: ConstCpuTensorHandle(tensorInfo) -, m_MutableMemory(nullptr) -{ -} - -template <> -void* CpuTensorHandle::GetTensor() const -{ - return m_MutableMemory; -} - -ScopedCpuTensorHandle::ScopedCpuTensorHandle(const TensorInfo& tensorInfo) -: CpuTensorHandle(tensorInfo) -{ -} - -ScopedCpuTensorHandle::ScopedCpuTensorHandle(const ConstTensor& tensor) -: ScopedCpuTensorHandle(tensor.GetInfo()) -{ - CopyFrom(tensor.GetMemoryArea(), tensor.GetNumBytes()); -} - -ScopedCpuTensorHandle::ScopedCpuTensorHandle(const ConstCpuTensorHandle& tensorHandle) -: ScopedCpuTensorHandle(tensorHandle.GetTensorInfo()) -{ - CopyFrom(tensorHandle.GetConstTensor(), tensorHandle.GetTensorInfo().GetNumBytes()); -} - -ScopedCpuTensorHandle::ScopedCpuTensorHandle(const ScopedCpuTensorHandle& other) -: CpuTensorHandle(other.GetTensorInfo()) -{ - CopyFrom(other); -} - -ScopedCpuTensorHandle& ScopedCpuTensorHandle::operator=(const ScopedCpuTensorHandle& other) -{ - ::operator delete(GetTensor()); - SetMemory(nullptr); - CopyFrom(other); - return *this; -} - -ScopedCpuTensorHandle::~ScopedCpuTensorHandle() -{ - ::operator delete(GetTensor()); -} - -void ScopedCpuTensorHandle::Allocate() -{ - if (GetTensor() == nullptr) - { - SetMemory(::operator new(GetTensorInfo().GetNumBytes())); - } - else - { - throw InvalidArgumentException("CpuTensorHandle::Allocate Trying to allocate a CpuTensorHandle" - "that already has allocated memory."); - } -} - -void ScopedCpuTensorHandle::CopyOutTo(void* memory) const -{ - memcpy(memory, GetTensor(), GetTensorInfo().GetNumBytes()); -} - -void ScopedCpuTensorHandle::CopyInFrom(const void* memory) -{ - memcpy(GetTensor(), memory, GetTensorInfo().GetNumBytes()); -} - -void ScopedCpuTensorHandle::CopyFrom(const ScopedCpuTensorHandle& other) -{ - CopyFrom(other.GetTensor(), other.GetTensorInfo().GetNumBytes()); -} - -void ScopedCpuTensorHandle::CopyFrom(const void* srcMemory, unsigned int numBytes) -{ - ARMNN_ASSERT(GetTensor() == nullptr); - ARMNN_ASSERT(GetTensorInfo().GetNumBytes() == numBytes); - - if (srcMemory) - { - Allocate(); - memcpy(GetTensor(), srcMemory, numBytes); - } -} - -void PassthroughCpuTensorHandle::Allocate() -{ - throw InvalidArgumentException("PassthroughCpuTensorHandle::Allocate() should never be called"); -} - -void ConstPassthroughCpuTensorHandle::Allocate() -{ - throw InvalidArgumentException("ConstPassthroughCpuTensorHandle::Allocate() should never be called"); -} - -} // namespace armnn -- cgit v1.2.1