aboutsummaryrefslogtreecommitdiff
path: root/include/armnn/backends
diff options
context:
space:
mode:
authorFrancis Murtagh <francis.murtagh@arm.com>2022-07-06 11:23:57 +0100
committerNikhil Raj <nikhil.raj@arm.com>2022-07-08 15:25:09 +0100
commit0eba1a250623025bd4ef28a43f804955201ed831 (patch)
tree806b1415fbb49175ecc9440eaa00c38d96b50485 /include/armnn/backends
parenta045ac07f8613edc4e0027b226eadd72e7a423ec (diff)
downloadarmnn-0eba1a250623025bd4ef28a43f804955201ed831.tar.gz
IVGCVSW-7060 Add GetMemoryRequirements to IWorkload
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: I8c59f1feb9c44351427715b08d762b5a73320af5
Diffstat (limited to 'include/armnn/backends')
-rw-r--r--include/armnn/backends/IWorkload.hpp8
-rw-r--r--include/armnn/backends/WorkloadInfo.hpp14
2 files changed, 20 insertions, 2 deletions
diff --git a/include/armnn/backends/IWorkload.hpp b/include/armnn/backends/IWorkload.hpp
index c7bc5da851..22baf92c1a 100644
--- a/include/armnn/backends/IWorkload.hpp
+++ b/include/armnn/backends/IWorkload.hpp
@@ -1,10 +1,11 @@
//
-// Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
+// Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
#pragma once
#include <armnn/Types.hpp>
+#include <armnn/backends/WorkloadInfo.hpp>
namespace armnn
{
@@ -44,6 +45,11 @@ public:
virtual void ReplaceOutputTensorHandle(ITensorHandle* /*output*/, unsigned int /*slot*/) = 0;
virtual void RegisterDebugCallback(const DebugCallbackFunction& /*func*/) {}
+
+ virtual armnn::Optional<armnn::MemoryRequirements> GetMemoryRequirements()
+ {
+ return armnn::EmptyOptional();
+ }
};
} //namespace armnn
diff --git a/include/armnn/backends/WorkloadInfo.hpp b/include/armnn/backends/WorkloadInfo.hpp
index 1d6967e134..a7a1e1e81a 100644
--- a/include/armnn/backends/WorkloadInfo.hpp
+++ b/include/armnn/backends/WorkloadInfo.hpp
@@ -1,5 +1,5 @@
//
-// Copyright © 2020 Arm Ltd. All rights reserved.
+// Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
#pragma once
@@ -22,4 +22,16 @@ struct WorkloadInfo
Optional<std::string> m_ConvolutionMethod = EmptyOptional();
};
+struct MemoryInfo
+{
+ unsigned int m_OutputSlotIndex;
+ size_t m_Size{ 0 };
+ size_t m_Alignment{ 64 };
+};
+
+struct MemoryRequirements
+{
+ armnn::Optional<std::vector<MemoryInfo>> m_IntraLayerTensors;
+};
+
} //namespace armnn