Stencil computation optimization and auto-tuning on state-of-the-art multicore architectures

  • Authors:
  • Kaushik Datta;Mark Murphy;Vasily Volkov;Samuel Williams;Jonathan Carter;Leonid Oliker;David Patterson;John Shalf;Katherine Yelick

  • Affiliations:
  • Lawrence Berkeley National Laboratory, Berkeley, CA and University of California at Berkeley, Berkeley, CA;University of California at Berkeley, Berkeley, CA;University of California at Berkeley, Berkeley, CA;Lawrence Berkeley National Laboratory, Berkeley, CA and University of California at Berkeley, Berkeley, CA;Lawrence Berkeley National Laboratory, Berkeley, CA;Lawrence Berkeley National Laboratory, Berkeley, CA and University of California at Berkeley, Berkeley, CA;Lawrence Berkeley National Laboratory, Berkeley, CA and University of California at Berkeley, Berkeley, CA;Lawrence Berkeley National Laboratory, Berkeley, CA;Lawrence Berkeley National Laboratory, Berkeley, CA and University of California at Berkeley, Berkeley, CA

  • Venue:
  • Proceedings of the 2008 ACM/IEEE conference on Supercomputing
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Understanding the most efficient design and utilization of emerging multicore systems is one of the most challenging questions faced by the mainstream and scientific computing industries in several decades. Our work explores multicore stencil (nearest-neighbor) computations --- a class of algorithms at the heart of many structured grid codes, including PDF solvers. We develop a number of effective optimization strategies, and build an auto-tuning environment that searches over our optimizations and their parameters to minimize runtime, while maximizing performance portability. To evaluate the effectiveness of these strategies we explore the broadest set of multicore architectures in the current HPC literature, including the Intel Clovertown, AMD Barcelona, Sun Victoria Falls, IBM QS22 PowerXCell 8i, and NVIDIA GTX280. Overall, our auto-tuning optimization methodology results in the fastest multicore stencil performance to date. Finally, we present several key insights into the architectural tradeoffs of emerging multicore designs and their implications on scientific algorithm development.