aboutsummaryrefslogtreecommitdiff
path: root/src/backends/aclCommon/memory/OffsetLifetimeManager.cpp
diff options
context:
space:
mode:
authorAron Virginas-Tar <Aron.Virginas-Tar@arm.com>2018-10-31 11:04:01 +0000
committerDavid Beck <david.beck@arm.com>2018-11-08 11:34:44 +0000
commit60578950322491e44b4203fe085c3230ead19c7a (patch)
treee68bd71cb7b90d66d69a3de25561e32a13dd4e17 /src/backends/aclCommon/memory/OffsetLifetimeManager.cpp
parentdb49a8880ba869627e884b5ba5245a3932de218d (diff)
downloadarmnn-60578950322491e44b4203fe085c3230ead19c7a.tar.gz
IVGCVSW-1709: Clean up memory manager bodge
* Added quick workaround for the memory management errors in the CL/Neon unit tests Change-Id: I56250db462cdbdc1acc0a5824807d288fb0c1d11
Diffstat (limited to 'src/backends/aclCommon/memory/OffsetLifetimeManager.cpp')
-rw-r--r--src/backends/aclCommon/memory/OffsetLifetimeManager.cpp62
1 files changed, 0 insertions, 62 deletions
diff --git a/src/backends/aclCommon/memory/OffsetLifetimeManager.cpp b/src/backends/aclCommon/memory/OffsetLifetimeManager.cpp
deleted file mode 100644
index d0174f893c..0000000000
--- a/src/backends/aclCommon/memory/OffsetLifetimeManager.cpp
+++ /dev/null
@@ -1,62 +0,0 @@
-//
-// Copyright © 2017 Arm Ltd. All rights reserved.
-// SPDX-License-Identifier: MIT
-//
-#include "OffsetLifetimeManager.hpp"
-#include "OffsetMemoryPool.hpp"
-
-#include <arm_compute/runtime/IMemoryGroup.h>
-
-#include <numeric>
-
-#include <boost/assert.hpp>
-
-namespace armnn
-{
-
-OffsetLifetimeManager::OffsetLifetimeManager()
- : m_BlobSize(0)
-{
-}
-
-std::unique_ptr<arm_compute::IMemoryPool> OffsetLifetimeManager::create_pool(arm_compute::IAllocator* allocator)
-{
- BOOST_ASSERT(allocator);
- return std::make_unique<OffsetMemoryPool>(allocator, m_BlobSize);
-}
-
-arm_compute::MappingType OffsetLifetimeManager::mapping_type() const
-{
- return arm_compute::MappingType::OFFSETS;
-}
-
-void OffsetLifetimeManager::update_blobs_and_mappings()
-{
- BOOST_ASSERT(are_all_finalized());
- BOOST_ASSERT(_active_group);
-
- // Update blob size
- size_t maxGroupSize = std::accumulate(std::begin(_free_blobs), std::end(_free_blobs),
- static_cast<size_t>(0), [](size_t s, const Blob& b)
- {
- return s + b.max_size;
- });
- m_BlobSize = std::max(m_BlobSize, maxGroupSize);
-
- // Calculate group mappings
- auto& groupMappings = _active_group->mappings();
- size_t offset = 0;
- for(auto& freeBlob : _free_blobs)
- {
- for(auto& boundElementId : freeBlob.bound_elements)
- {
- BOOST_ASSERT(_active_elements.find(boundElementId) != std::end(_active_elements));
- Element& boundElement = _active_elements[boundElementId];
- groupMappings[boundElement.handle] = offset;
- }
- offset += freeBlob.max_size;
- BOOST_ASSERT(offset <= m_BlobSize);
- }
-}
-
-} // namespace armnn \ No newline at end of file