ComputingComputer EngineeringComputer ScienceCompilersComputer ArchitectureParallel ComputingData Locality OptimizationHardware AccelerationMemory HierarchyMemory Hierarchy DesignMemory Hierarchy OptimizationParallel ArchitecturesLocality ConstraintsLoop TilingMemory LocalityMemory Locality OptimizationSparse Linear AlgebraSparse Matrix AlgorithmsSparse Matrix ComputationStorage
Optimizing compilers exploit the memory hierarchy using loop tiling and fusion, but these two transformations usually interfere with each other due to the oversight of transformations on data in memories. We present a novel composition of loop tiling and fusion in this paper. Unlike existing tiling-after-fusion algorithms that only transform computation spaces, our approach first applies rectangular/parallelogram tiling to live-out computation spaces for fitting the memory hierarchy, followed by the computation of the memory footprints required by each tile. The upwards exposed data extracted from the memory footprints are used to determine the tile shapes of intermediate computation spaces, allowing the construction of arbitrary tile shapes. Finally, our technique implements a post-tiling fusion strategy for maximizing data locality without losing tilability or parallelism of live-out computation spaces, thereby enabling storage reduction and reuse, and optimizing the memory hierarchy. We demonstrate that our approach can achieve superior performance on both CPU and GPU architectures over the state of the art by experimenting on 11 benchmarks extracted from numerous domains including neural networks, image processing, sparse matrix computation and linear algebra. Also, the results of the ResNet-50 model on an AI accelerator show that our approach can obtain 16% performance improvement.
54
Deep Residual Learning for Image Recognition
Kaiming He, Xiangyu Zhang, Shaoqing Ren et al. · 2016 · 222.1K citations · Full text
ImageNet: A large-scale hierarchical image database
Jia Deng, Wei Dong, Richard Socher et al. · 2009 IEEE Conference on Computer Vision and Pattern Recognition · 2009 · 61.8K citations
A Combined Corner and Edge Detector
Chris Harris, Matthew J. Stephens · 1988 · 12.5K citations
Jonathan Ragan‐Kelley, Connelly Barnes, Andrew Adams et al. · 2013 · 895 citations