blob: 79df2d23dc7017570ac9a3788ba93ff7f63ead01 [file] [log] [blame]
Laurent Carlier749294b2020-06-01 09:03:17 +01001//
Matthew Sloyan2d213a72022-06-30 17:13:04 +01002// Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
Derek Lambertif674aa02019-08-01 15:56:25 +01003// SPDX-License-Identifier: MIT
4//
5
Derek Lambertif674aa02019-08-01 15:56:25 +01006#include <ResolveType.hpp>
7
Matteo Martincighe5b8eb92019-11-28 15:45:42 +00008#include <backendsCommon/MemSyncWorkload.hpp>
Colm Donelan0c479742021-12-10 12:43:54 +00009#include <armnn/backends/TensorHandle.hpp>
Matteo Martincighe5b8eb92019-11-28 15:45:42 +000010
Derek Lambertif674aa02019-08-01 15:56:25 +010011#include <cstring>
12
13namespace armnn
14{
15
16SyncMemGenericWorkload::SyncMemGenericWorkload(const MemSyncQueueDescriptor& descriptor,
Mike Kelly386ff1a2021-03-29 15:04:50 +010017 const WorkloadInfo& info)
Derek Lambertif674aa02019-08-01 15:56:25 +010018 : BaseWorkload<MemSyncQueueDescriptor>(descriptor, info)
19{
20 m_TensorHandle = descriptor.m_Inputs[0];
21}
22
23void SyncMemGenericWorkload::Execute() const
24{
25 ARMNN_SCOPED_PROFILING_EVENT(Compute::Undefined, "SyncMemGeneric_Execute");
26 m_TensorHandle->Map(true);
27 m_TensorHandle->Unmap();
28}
29
Matthew Sloyan2d213a72022-06-30 17:13:04 +010030void SyncMemGenericWorkload::ExecuteAsync(ExecutionData& executionData)
Mike Kelly386ff1a2021-03-29 15:04:50 +010031{
32 ARMNN_SCOPED_PROFILING_EVENT(Compute::Undefined, "SyncMemGeneric_Execute_WorkingMemDescriptor");
Matthew Sloyan2d213a72022-06-30 17:13:04 +010033
34 WorkingMemDescriptor* workingMemDescriptor = static_cast<WorkingMemDescriptor*>(executionData.m_Data);
35 workingMemDescriptor->m_Inputs[0]->Map(true);
36 workingMemDescriptor->m_Inputs[0]->Unmap();
Mike Kelly386ff1a2021-03-29 15:04:50 +010037}
38
Derek Lambertif674aa02019-08-01 15:56:25 +010039} //namespace armnn