Performance Gap: conv+pool is not fused into one linear operation
HEIR's pipeline does not fuse linalg.conv + linalg.pooling into a single linear operation (BSGS matrix-vector product). The LinalgCanonicalizations pass converts linalg.pooling_nchw_sum into a separate linalg.conv_2d_nchw_fchw, so each pool consumes its own multiplicative level. In contrast, a hand-written [CROSS](https://github.com/EfficientPPML/CROSS_dev/blob/main/demos/alexnet_he.py#L481) implementation fuses conv+pool into one matrix, saving ~2 levels for AlexNet-Tiny (depth 9 vs depth 7)
关闭于 2026-06-27 1 条评论