From f9aeef0e036df176699aa96d30d2ca8d7546534e Mon Sep 17 00:00:00 2001 From: Aron Virginas-Tar Date: Fri, 12 Oct 2018 15:18:03 +0100 Subject: IVGCVSW-2006: Move ACL memory manager source code under aclCommon Change-Id: Ie1c74a18de5c3dd1cd5285c222bd6327489c1508 --- src/armnn/memory/BlobLifetimeManager.cpp | 79 -------------------------------- 1 file changed, 79 deletions(-) delete mode 100644 src/armnn/memory/BlobLifetimeManager.cpp (limited to 'src/armnn/memory/BlobLifetimeManager.cpp') diff --git a/src/armnn/memory/BlobLifetimeManager.cpp b/src/armnn/memory/BlobLifetimeManager.cpp deleted file mode 100644 index fb8080c7ce..0000000000 --- a/src/armnn/memory/BlobLifetimeManager.cpp +++ /dev/null @@ -1,79 +0,0 @@ -// -// Copyright © 2017 Arm Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// -#include "BlobLifetimeManager.hpp" -#include "BlobMemoryPool.hpp" - -#include "arm_compute/runtime/IMemoryGroup.h" - -#include "boost/assert.hpp" - -#include - -namespace armnn -{ - -BlobLifetimeManager::BlobLifetimeManager() - : m_BlobSizes() -{ -} - -arm_compute::MappingType BlobLifetimeManager::mapping_type() const -{ - return arm_compute::MappingType::BLOBS; -} - -void BlobLifetimeManager::update_blobs_and_mappings() -{ - using namespace arm_compute; - - BOOST_ASSERT(are_all_finalized()); - BOOST_ASSERT(_active_group); - - // Sort free blobs requirements in descending order. - _free_blobs.sort([](const Blob & ba, const Blob & bb) - { - return ba.max_size > bb.max_size; - }); - std::vector groupSizes; - std::transform(std::begin(_free_blobs), std::end(_free_blobs), std::back_inserter(groupSizes), [](const Blob & b) - { - return b.max_size; - }); - - // Update blob sizes - size_t max_size = std::max(m_BlobSizes.size(), groupSizes.size()); - m_BlobSizes.resize(max_size, 0); - groupSizes.resize(max_size, 0); - std::transform(std::begin(m_BlobSizes), std::end(m_BlobSizes), std::begin(groupSizes), - std::begin(m_BlobSizes), [](size_t lhs, size_t rhs) - { - return std::max(lhs, rhs); - }); - - // Calculate group mappings - auto& groupMappings = _active_group->mappings(); - unsigned int blobIdx = 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] = blobIdx; - } - - ++blobIdx; - } -} - -std::unique_ptr BlobLifetimeManager::create_pool(arm_compute::IAllocator* allocator) -{ - BOOST_ASSERT(allocator); - return std::make_unique(allocator, m_BlobSizes); -} - -} // namespace armnn \ No newline at end of file -- cgit v1.2.1