| 213 | } // namespace |
| 214 | |
| 215 | size_t ConvBiasImpl::AlgoIm2col::get_workspace(const NCBKernSizeParam& p) const { |
| 216 | MIDOUT_BEGIN(megdnn_fallback_im2col, 0, 0) { |
| 217 | fallback::MatrixMulImpl::AlgoBase::MatmulDescription matmul_desc = |
| 218 | m_matmul_algo->matmul_description(); |
| 219 | size_t oc_tile_size = 0, ohw_tile_size = 0; |
| 220 | choice_ohw_oc_block( |
| 221 | p, oc_tile_size, ohw_tile_size, matmul_desc.innerblocksize.m, |
| 222 | matmul_desc.innerblocksize.n, m_ohw_tile_size, matmul_desc.packmode); |
| 223 | return get_bundle(p, m_matmul_algo, oc_tile_size, ohw_tile_size) |
| 224 | .total_size_in_bytes(); |
| 225 | } |
| 226 | MIDOUT_END(); |
| 227 | return 0; |
| 228 | } |
| 229 | |
| 230 | SmallVector<ConvBiasImpl::NCBKern> ConvBiasImpl::AlgoIm2col::dispatch_kerns( |
| 231 | const NCBKernSizeParam& param) const { |
no test coverage detected