Procedia Computer Science · 2015 · 33 citations · 15 references
ComputingComputer EngineeringComputer ScienceAlgorithmsParallel AlgorithmsParallel ComputingCpu SchedulingData ParallelismMemory Hierarchy OptimizationBandwidthBandwidth Bottleneck AnalysisBlocked AlgorithmsBlockingMemory BandwidthMemory Bandwidth OptimizationMemory Latency ReductionStencil Computation
Temporal blocking is a class of algorithms which reduces the required memory bandwidth (B/F ratio) of a given stencil computation, by “blocking” multiple time steps. In this paper, we prove that a lower limit exists for the reduction of the B/F attainable by temporal blocking, under certain conditions. We introduce the PiTCH tiling, an example of temporal blocking method that achieves the optimal B/F ratio. We estimate the performance of PiTCH tiling for various stencil applications on several modern CPUs. We show that PiTCH tiling achieves 1.5<2 times better B/F reduction in three-dimensional applications, compared to other temporal blocking schemes. We also show that PiTCH tiling can remove the bandwidth bottleneck from most of the stencil applications considered.
15
A data locality optimizing algorithm
Michael E. Wolf, Monica S. Lam · 1991 · 1.3K citations · Full text
Jonathan Ragan‐Kelley, Connelly Barnes, Andrew Adams et al. · 2013 · 895 citations
Jonathan Ragan‐Kelley, Connelly Barnes, Andrew Adams et al. · ACM SIGPLAN Notices · 2013 · 490 citations · Full text
Michael Wolfe · 1989 · 430 citations · Full text