aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/runtime/BlobMemoryPool.h
diff options
context:
space:
mode:
authorGeorgios Pinitas <georgios.pinitas@arm.com>2017-09-19 15:03:20 +0100
committerAnthony Barbier <anthony.barbier@arm.com>2018-11-02 16:35:24 +0000
commitd9e5b19c87906390ed87efdada3b096a62888bf4 (patch)
tree6714eaa27629ddd4cd11ec5e00cb9be781e8bef0 /arm_compute/runtime/BlobMemoryPool.h
parent5701e2a41ddf0a12042ac648993fc39701961f66 (diff)
downloadComputeLibrary-d9e5b19c87906390ed87efdada3b096a62888bf4.tar.gz
COMPMID-417: Fix in BlobMemoryPool and BlobLifetimeManager
-Removes invalid error check as multiple handles can be applied to the same blob. -Calculate group mappings and update blobs using the active_elements instead of the finalized group to allow reusability of blobs of non-overlapping subgroups of the same group. Change-Id: I21eee7a47829f751280a7b8dc1e831fff1b0ef41 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/88279 Reviewed-by: Moritz Pflanzer <moritz.pflanzer@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com>
Diffstat (limited to 'arm_compute/runtime/BlobMemoryPool.h')
-rw-r--r--arm_compute/runtime/BlobMemoryPool.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/arm_compute/runtime/BlobMemoryPool.h b/arm_compute/runtime/BlobMemoryPool.h
index f2be2dd8df..f703bf0b82 100644
--- a/arm_compute/runtime/BlobMemoryPool.h
+++ b/arm_compute/runtime/BlobMemoryPool.h
@@ -26,19 +26,27 @@
#include "arm_compute/runtime/IMemoryPool.h"
-#include "arm_compute/runtime/IAllocator.h"
#include "arm_compute/runtime/Types.h"
#include <cstddef>
+#include <memory>
#include <vector>
namespace arm_compute
{
+class IAllocator;
+
/** Blob memory pool */
class BlobMemoryPool : public IMemoryPool
{
public:
- /** Default Constructor */
+ /** Default Constructor
+ *
+ * @note allocator should outlive the memory pool
+ *
+ * @param[in] allocator Backing memory allocator
+ * @param[in] blob_sizes Sizes of the blobs to be allocated
+ */
BlobMemoryPool(IAllocator *allocator, std::vector<size_t> blob_sizes);
/** Default Destructor */
~BlobMemoryPool();