2013 · 87 citations · 16 references
Key TechniqueEngineeringComputer ArchitectureComputer-aided DesignData ReuseGpu ComputingParallel ComputingComputational GeometryInhibit Inter-tile ParallelismGeometric ModelingMassively-parallel ComputingComputer EngineeringComputer ScienceGpu ClusterExternal-memory AlgorithmGpu ArchitectureNatural SciencesParallel ProcessingParallel ProgrammingData-level Parallelism
Tiling is a key technique to enhance data reuse. For computations structured as one sequential outer "time" loop enclosing a set of parallel inner loops, tiling only the parallel inner loops may not enable enough data reuse in the cache. Tiling the inner loops along with the outer time loop enhances data locality but may require other transformations like loop skewing that inhibit inter-tile parallelism.
16
A practical automatic polyhedral parallelizer and locality optimizer
Uday Bondhugula, Albert Hartono, J. Ramanujam et al. · 2008 · 874 citations
3D finite difference computation on GPUs using CUDA
Paulius Micikevicius · 2009 · 514 citations
Stencil computation optimization and auto-tuning on state-of-the-art multicore architectures
Kaushik Datta, Mark Murphy, В. М. Волков et al. · IEEE International Conference on High Performance Computing, Data, and Analytics · 2008 · 464 citations
Cluster Computing, Computational Science, Massively-parallel Computing +15
Yuan Tang, Rezaul Chowdhury, Bradley C. Kuszmaul et al. · 2011 · 334 citations