| 52 | } |
| 53 | |
| 54 | void NEPoolingLayer::configure(ITensor *input, ITensor *output, const PoolingLayerInfo &pool_info, ITensor *indices) |
| 55 | { |
| 56 | ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "NEPoolingLayer::configure"); |
| 57 | _impl->src = input; |
| 58 | _impl->dst = output; |
| 59 | _impl->indices = indices; |
| 60 | _impl->op = std::make_unique<cpu::CpuPool2d>(); |
| 61 | _impl->op->configure(input->info(), output->info(), pool_info, (indices) ? indices->info() : nullptr); |
| 62 | |
| 63 | _impl->run_pack = {{TensorType::ACL_SRC, _impl->src}, |
| 64 | {TensorType::ACL_DST_0, _impl->dst}, |
| 65 | {TensorType::ACL_DST_1, _impl->indices}}; |
| 66 | _impl->workspace_tensors = manage_workspace<Tensor>(_impl->op->workspace(), _impl->memory_group, _impl->run_pack); |
| 67 | } |
| 68 | |
| 69 | Status NEPoolingLayer::validate(const ITensorInfo *input, |
| 70 | const ITensorInfo *output, |