From 26014cf4d0519aef280c8444c60ec34c4e37e3b6 Mon Sep 17 00:00:00 2001 From: Georgios Pinitas Date: Mon, 9 Sep 2019 19:00:57 +0100 Subject: COMPMID-2649: Generalize MemoryGroup. Avoids any upcasting. Change-Id: I2181c7c9df59a7fb8a78e11934fbd96058fd39c7 Signed-off-by: Georgios Pinitas Reviewed-on: https://review.mlplatform.org/c/1918 Comments-Addressed: Arm Jenkins Tested-by: Arm Jenkins Reviewed-by: Gian Marco Iodice --- src/graph/backends/CL/CLDeviceBackend.cpp | 4 ++-- src/graph/backends/CL/CLTensorHandle.cpp | 8 +++----- src/graph/backends/GLES/GCDeviceBackend.cpp | 6 +++--- src/graph/backends/GLES/GCTensorHandle.cpp | 8 +++----- src/graph/backends/NEON/NETensorHandle.cpp | 5 ++--- 5 files changed, 13 insertions(+), 18 deletions(-) (limited to 'src/graph/backends') diff --git a/src/graph/backends/CL/CLDeviceBackend.cpp b/src/graph/backends/CL/CLDeviceBackend.cpp index 0666ec0ccb..9971e4fc9a 100644 --- a/src/graph/backends/CL/CLDeviceBackend.cpp +++ b/src/graph/backends/CL/CLDeviceBackend.cpp @@ -37,8 +37,8 @@ #include "arm_compute/core/TensorInfo.h" #include "arm_compute/runtime/BlobLifetimeManager.h" #include "arm_compute/runtime/CL/CLBufferAllocator.h" -#include "arm_compute/runtime/CL/CLMemoryGroup.h" #include "arm_compute/runtime/CL/CLScheduler.h" +#include "arm_compute/runtime/MemoryGroup.h" #include "arm_compute/runtime/MemoryManagerOnDemand.h" #include "arm_compute/runtime/PoolManager.h" @@ -132,7 +132,7 @@ void CLDeviceBackend::setup_backend_context(GraphContext &ctx) mm_ctx.target = Target::CL; mm_ctx.intra_mm = create_memory_manager(MemoryManagerAffinity::Buffer); mm_ctx.cross_mm = create_memory_manager(MemoryManagerAffinity::Buffer); - mm_ctx.cross_group = std::make_shared(mm_ctx.cross_mm); + mm_ctx.cross_group = std::make_shared(mm_ctx.cross_mm); mm_ctx.allocator = _allocator.get(); ctx.insert_memory_management_ctx(std::move(mm_ctx)); diff --git a/src/graph/backends/CL/CLTensorHandle.cpp b/src/graph/backends/CL/CLTensorHandle.cpp index 219d9d0301..891c784cbe 100644 --- a/src/graph/backends/CL/CLTensorHandle.cpp +++ b/src/graph/backends/CL/CLTensorHandle.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 ARM Limited. + * Copyright (c) 2018-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -23,8 +23,7 @@ */ #include "arm_compute/graph/backends/CL/CLTensorHandle.h" -#include "arm_compute/core/utils/misc/Cast.h" -#include "arm_compute/runtime/CL/CLMemoryGroup.h" +#include "arm_compute/runtime/IMemoryGroup.h" namespace arm_compute { @@ -52,8 +51,7 @@ void CLTensorHandle::manage(IMemoryGroup *mg) { if(mg != nullptr) { - auto *cl_mg = arm_compute::utils::cast::polymorphic_downcast(mg); - cl_mg->manage(&_tensor); + mg->manage(&_tensor); } } diff --git a/src/graph/backends/GLES/GCDeviceBackend.cpp b/src/graph/backends/GLES/GCDeviceBackend.cpp index 5f0bf3f263..058f7792e7 100644 --- a/src/graph/backends/GLES/GCDeviceBackend.cpp +++ b/src/graph/backends/GLES/GCDeviceBackend.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 ARM Limited. + * Copyright (c) 2018-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -36,8 +36,8 @@ #include "arm_compute/core/TensorInfo.h" #include "arm_compute/runtime/BlobLifetimeManager.h" #include "arm_compute/runtime/GLES_COMPUTE/GCBufferAllocator.h" -#include "arm_compute/runtime/GLES_COMPUTE/GCMemoryGroup.h" #include "arm_compute/runtime/GLES_COMPUTE/GCScheduler.h" +#include "arm_compute/runtime/MemoryGroup.h" #include "arm_compute/runtime/MemoryManagerOnDemand.h" #include "arm_compute/runtime/PoolManager.h" @@ -85,7 +85,7 @@ void GCDeviceBackend::setup_backend_context(GraphContext &ctx) mm_ctx.target = Target::GC; mm_ctx.intra_mm = create_memory_manager(MemoryManagerAffinity::Buffer); mm_ctx.cross_mm = create_memory_manager(MemoryManagerAffinity::Buffer); - mm_ctx.cross_group = std::make_shared(mm_ctx.cross_mm); + mm_ctx.cross_group = std::make_shared(mm_ctx.cross_mm); mm_ctx.allocator = &_allocator; ctx.insert_memory_management_ctx(std::move(mm_ctx)); diff --git a/src/graph/backends/GLES/GCTensorHandle.cpp b/src/graph/backends/GLES/GCTensorHandle.cpp index 4e5c652120..8f592625de 100644 --- a/src/graph/backends/GLES/GCTensorHandle.cpp +++ b/src/graph/backends/GLES/GCTensorHandle.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 ARM Limited. + * Copyright (c) 2018-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -23,8 +23,7 @@ */ #include "arm_compute/graph/backends/GLES/GCTensorHandle.h" -#include "arm_compute/core/utils/misc/Cast.h" -#include "arm_compute/runtime/GLES_COMPUTE/GCMemoryGroup.h" +#include "arm_compute/runtime/IMemoryGroup.h" namespace arm_compute { @@ -52,8 +51,7 @@ void GCTensorHandle::manage(IMemoryGroup *mg) { if(mg != nullptr) { - auto *gc_mg = arm_compute::utils::cast::polymorphic_downcast(mg); - gc_mg->manage(&_tensor); + mg->manage(&_tensor); } } diff --git a/src/graph/backends/NEON/NETensorHandle.cpp b/src/graph/backends/NEON/NETensorHandle.cpp index 5892116caf..d58c45b7e8 100644 --- a/src/graph/backends/NEON/NETensorHandle.cpp +++ b/src/graph/backends/NEON/NETensorHandle.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 ARM Limited. + * Copyright (c) 2018-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -52,8 +52,7 @@ void NETensorHandle::manage(IMemoryGroup *mg) { if(mg != nullptr) { - auto *ne_mg = arm_compute::utils::cast::polymorphic_downcast(mg); - ne_mg->manage(&_tensor); + mg->manage(&_tensor); } } -- cgit v1.2.1