24 #ifndef ARM_COMPUTE_CPU_POOLING_H 25 #define ARM_COMPUTE_CPU_POOLING_H 37 struct PoolingLayerInfo;
42 class CpuPoolingAssemblyDispatch;
53 CpuPooling(std::shared_ptr<IMemoryManager> memory_manager =
nullptr);
91 std::shared_ptr<IMemoryManager> _memory_manager;
93 std::unique_ptr<INEKernel> _pooling_layer_kernel;
94 std::unique_ptr<INEKernel> _border_handler;
95 std::unique_ptr<CpuPoolingAssemblyDispatch> _asm_glue;
97 bool _is_global_pooling_layer;
Basic interface for functions which have a single async Neon kernel.
Basic function to simulate a pooling layer with the specified pooling operation.
static Status validate(const ITensorInfo *src, const ITensorInfo *dst, const PoolingLayerInfo &pool_info, const ITensorInfo *indices=nullptr)
Static function to check if given info will lead to a valid configuration of CpuPooling.
Store the tensor's metadata.
SimpleTensor< float > src
Copyright (c) 2017-2021 Arm Limited.
~CpuPooling()
Default destructor.
void configure(ITensorInfo *src, ITensorInfo *dst, const PoolingLayerInfo &pool_info, ITensorInfo *indices=nullptr)
Set the src and dst tensors.
CpuPooling & operator=(const CpuPooling &)=delete
Prevent instances of this class from being copied (As this class contains pointers) ...
Pooling Layer Information struct.
CpuPooling(std::shared_ptr< IMemoryManager > memory_manager=nullptr)
Constructor.
DataLayout
[DataLayout enum definition]
void run(ITensorPack &tensors) override
Run the kernels contained in the function.