| 114 | } |
| 115 | |
| 116 | void run_pooling_check( |
| 117 | Handle* handle, std::vector<std::pair<param::Pooling, TensorShapeArray>> args, |
| 118 | bool is_int8) { |
| 119 | Checker<Pooling> checker(handle); |
| 120 | UniformIntRNG rng_int8{INT8_MIN >> 1, INT8_MAX >> 1}; |
| 121 | UniformIntRNG rng_fp32{-10, 10}; |
| 122 | if (is_int8) { |
| 123 | checker.set_dtype(0, dtype::QuantizedS8(1.1f)); |
| 124 | checker.set_rng(0, &rng_int8); |
| 125 | } else { |
| 126 | checker.set_rng(0, &rng_fp32); |
| 127 | } |
| 128 | for (auto arg : args) { |
| 129 | checker.set_param(arg.first).exec(arg.second); |
| 130 | } |
| 131 | } |
| 132 | |
| 133 | TEST_F(ARM_COMMON_MULTI_THREADS, POOLING_NCHW44_FP32) { |
| 134 | for (auto filter : {2, 3, 4, 5}) |