Title :
Compiler generation and autotuning of communication-avoiding operators for geometric multigrid
Author :
Basu, Prithwish ; Venkat, Ashwin ; Hall, Mathew ; Williams, S. ; Van Straalen, Brian ; Oliker, Leonid
Author_Institution :
Univ. of Utah, Salt Lake City, UT, USA
Abstract :
This paper describes a compiler approach to introducing communication-avoiding optimizations in geometric multigrid (GMG), one of the most popular methods for solving partial differential equations. Communication-avoiding optimizations reduce vertical communication through the memory hierarchy and horizontal communication across processes or threads, usually at the expense of introducing redundant computation. We focus on applying these optimizations to the smooth operator, which successively reduces the error and accounts for the largest fraction of the GMG execution time. Our compiler technology applies both novel and known transformations to derive an implementation comparable to manually-tuned code. To make the approach portable, an underlying autotuning system explores the tradeoff between reduced communication and increased computation, as well as tradeoffs in threading schemes, to automatically identify the best implementation for a particular architecture and at each computation phase. Results show that we are able to quadruple the performance of the smooth operation on the finest grids while attaining performance within 94% of manually-tuned code. Overall we improve the overall multigrid solve time by 2.5× without sacrificing programer productivity.
Keywords :
compiler generators; digital arithmetic; optimisation; partial differential equations; GMG execution time; communication-avoiding operator autotuning; communication-avoiding optimizations; compiler generation; error reduction; geometric multigrid; horizontal communication; manually-tuned code; memory hierarchy; overall multigrid solve time; partial differential equations; redundant computation; threading schemes; vertical communication reduction; Benchmark testing; Color; Computer architecture; Instruction sets; Jacobian matrices; Laplace equations; Optimization;
Conference_Titel :
High Performance Computing (HiPC), 2013 20th International Conference on
Conference_Location :
Bangalore
DOI :
10.1109/HiPC.2013.6799131