Tiling stencil computations to maximize parallelism


Autoria(s): Bandishti, Vinayaka; Pananilath, Irshad; Bondhugula, Uday
Data(s)

2012

Resumo

Most stencil computations allow tile-wise concurrent start, i.e., there always exists a face of the iteration space and a set of tiling hyperplanes such that all tiles along that face can be started concurrently. This provides load balance and maximizes parallelism. However, existing automatic tiling frameworks often choose hyperplanes that lead to pipelined start-up and load imbalance. We address this issue with a new tiling technique that ensures concurrent start-up as well as perfect load-balance whenever possible. We first provide necessary and sufficient conditions on tiling hyperplanes to enable concurrent start for programs with affine data accesses. We then provide an approach to find such hyperplanes. Experimental evaluation on a 12-core Intel Westmere shows that our code is able to outperform a tuned domain-specific stencil code generator by 4% to 27%, and previous compiler techniques by a factor of 2x to 10.14x.

Formato

application/pdf

Identificador

http://eprints.iisc.ernet.in/46676/1/Int_Con_Hig_Per_Com_1_2012.pdf

Bandishti, Vinayaka and Pananilath, Irshad and Bondhugula, Uday (2012) Tiling stencil computations to maximize parallelism. In: 12 Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, 2012, New York.

Publicador

IEEE

Relação

http://dl.acm.org/citation.cfm?id=2389051

http://eprints.iisc.ernet.in/46676/

Palavras-Chave #Computer Science & Automation (Formerly, School of Automation)
Tipo

Conference Paper

PeerReviewed