23template <
typename SrcTensorHandleType,
typename DstTensorHandleType>
25 std::vector<std::pair<SrcTensorHandleType*, DstTensorHandleType*>>& tensorHandlePairs)
27 const unsigned int numInputs =
static_cast<unsigned int>(descriptor.m_Inputs.size());
28 tensorHandlePairs.reserve(numInputs);
30 for (
unsigned int i = 0; i < numInputs; ++i)
33 descriptor.m_Inputs[i]);
35 descriptor.m_Outputs[i]);
37 tensorHandlePairs.emplace_back(srcTensorHandle, dstTensorHandle);
55 auto copyFunc = [](
void* dst,
const void* src,
size_t size)
57 memcpy(dst, src, size);
60 for (
const auto& pair : m_TensorHandlePairs)
#define ARMNN_SCOPED_PROFILING_EVENT(backendId, name)
BaseWorkload(const MemCopyQueueDescriptor &descriptor, const WorkloadInfo &info)
CopyMemGenericWorkload(const MemCopyQueueDescriptor &descriptor, const WorkloadInfo &info)
void Execute() const override
Copyright (c) 2021 ARM Limited and Contributors.
void GatherTensorHandlePairs(const DescriptorType &descriptor, std::vector< std::pair< SrcTensorHandleType *, DstTensorHandleType * > > &tensorHandlePairs)
DestType PolymorphicDowncast(SourceType *value)
Polymorphic downcast for build in pointers only.
void CopyTensorContentsGeneric(const ITensorHandle *srcTensor, ITensorHandle *dstTensor, CopyFunc copy)
Contains information about TensorInfos of a layer.