IVGCVSW-6298 'IMemoryOptimizerStrategy Add declarations and constant layer strategy'
* Added IMemoryOptimizerStrategy interface
* Added ConstLayerMemoryOptimizer strategy
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I6a92e659379e5cc39c375b669678eee8a8c08c20
diff --git a/include/armnn/Types.hpp b/include/armnn/Types.hpp
index 19e93c3..0b7b941 100644
--- a/include/armnn/Types.hpp
+++ b/include/armnn/Types.hpp
@@ -213,6 +213,19 @@
DmaBufProtected = 4
};
+enum class MemBlockStrategyType
+{
+ // MemBlocks can be packed on the Y axis only.
+ // In other words MemBlocks with overlapping lifetimes cannot use the same MemBin,
+ // equivalent to blob or pooling memory management.
+ SingleAxisPacking = 0,
+
+ // MemBlocks can be packed on the Y and X axis.
+ // In other words MemBlocks with overlapping lifetimes can use the same MemBin,
+ // equivalent to offset or slab memory management.
+ MultiAxisPacking = 1
+};
+
/// Each backend should implement an IBackend.
class IBackend
{