Algebraic description and automatic generation of multigrid methods in SPIRAL

Abstract

SPIRAL is an autotuning, program generation, and code synthesis system that offers a fully automatic generation of highly optimized target codes, customized for the specific execution platform at hand. Initially, SPIRAL was targeted at problem domains in digital signal processing, later also at basic linear algebra. We open SPIRAL up to a new, practically relevant and challenging domain: multigrid solvers. SPIRAL is driven by algebraic transformation rules. We specify a set of such rules for a simple multigrid solver with a Richardson smoother for a discretized square 2D Poisson equation with Dirichlet boundary conditions. We present the target code that SPIRAL generates in static single‐assignment form and discuss its performance. While this example required no changes of or extensions to the SPIRAL system, more complex multigrid solvers may require small adaptations.

Document Details

Document Type
Pub Defense Publication
Publication Date
Mar 29, 2017
Source ID
10.1002/cpe.4105

Entities

People

  • Christian Lengauer
  • Franz Franchetti
  • Marcus Mohr
  • Matthias Bolten
  • Paul H. J. Kelly

Organizations

  • Carnegie Mellon University
  • Defense Advanced Research Projects Agency
  • Imperial College London
  • Ludwig-Maximilians-Universität München
  • University of Kassel
  • University of Passau

Tags

Readers

  • Enterprise Information Systems Architecture and Joint Command Capability Interoperability Support.
  • Finite Element Method (FEM) for solving Partial Differential Equations (PDEs)