WBMM: Windowed Batch Matrix Multiplication for Efficient Large Receptive Field Convolution
Summary
Windowed Batch Matrix Multiplication (WBMM) is a novel technique designed to overcome the performance degradation of large kernel depthwise convolutions, which suffer from irregular memory access. While Large Kernel Acceleration (LKA) helps small feature maps, it becomes counterproductive on larger ones. WBMM addresses this by partitioning input into contiguous windows and using a compact relative position bias table to construct weight matrices, enabling regular memory access via batched matrix multiplication. This approach uniquely allows WBMM's throughput to improve with larger windows, contrasting with depthwise convolutions. Operator-level benchmarks show WBMM with 14x14 windows outperforms 5x5 depthwise convolution baselines in speed, providing a 7.8x larger per-layer receptive field. Combined with inter-block cross-window communication and hierarchical window reparameterization, WBMM achieves comparable or higher accuracy on ImageNet-1K, COCO, and ADE20K, with a 1.31-1.88x training speedup across GPU, CPU, and edge devices.
Key takeaway
For Computer Vision Engineers developing models requiring large receptive fields, WBMM offers a significant performance advantage. You should consider integrating WBMM to overcome the efficiency issues of traditional large kernel depthwise convolutions. This approach provides a 1.31-1.88x training speedup and maintains high accuracy across diverse hardware, making it a robust alternative for improving model efficiency and performance in tasks like image classification and segmentation.
Key insights
WBMM uses windowed batch matrix multiplication to enable efficient large receptive field convolutions with regular memory access.
Principles
- Large kernel depthwise convolutions degrade with size.
- Regular memory access improves convolution throughput.
- Windowing can reverse performance scaling with kernel size.
Method
WBMM partitions input into contiguous windows, indexes a compact relative position bias table to construct weight matrices, then performs batched matrix multiplication for regular memory access.
In practice
- Use WBMM for large receptive field models.
- Apply WBMM for training speedup on various devices.
- Integrate WBMM for improved accuracy on vision tasks.
Topics
- WBMM
- Depthwise Convolutions
- Large Kernel Convolutions
- Receptive Field
- Batched Matrix Multiplication
- Computer Vision
- GPU Acceleration
Code references
Best for: AI Engineer, Research Scientist, AI Scientist, Machine Learning Engineer, Computer Vision Engineer
Related on AIssential
Editorial summary, takeaway, and curation by AIssential. Original article published by Computer Vision and Pattern Recognition.