#ifndef CAFFE2_OPERATORS_POOL_OP_UTIL_H_ #define CAFFE2_OPERATORS_POOL_OP_UTIL_H_ #include "caffe2/core/types.h" #include "caffe2/utils/cpu_neon.h" namespace caffe2 { namespace pool_op_util { bool IsNeon4x4p0s0Eligible( int input_h, int input_w, int output_h, int output_w, int kh, int kw, int stride_h, int stride_w, int pad_t, int pad_l, int pad_b, int pad_r, int dilation_h, int dilation_w, const float* X, float* Y); bool IsNeon2x2p0s0Eligible( int input_h, int input_w, int output_h, int output_w, int kh, int kw, int stride_h, int stride_w, int pad_t, int pad_l, int pad_b, int pad_r, int dilation_h, int dilation_w, const float* X, float* Y); void RunNeonAveragePool4x4p0s0NCHW( int N, int C, int H, int W, const float* X, float* Y); void RunNeonMaxPool2x2p0s0NCHW( int N, int C, int H, int W, const float* X, float* Y); } // namespace pool_op_util } // namespace caffe2 #endif // CAFFE2_OPERATORS_POOL_OP_UTIL_H_