Automatically Generating Efficient Simulation Codes on GPUs from Partial Differential Equations

  • Hawick K
  • 9


    Mendeley users who have this article in their library.
  • N/A


    Citations of this article.


We show how compiler technology can generate fast and efficient yet human-readable data-parallel simulation code for solving certain partial differential equation (PDE) based problems. We present a code parser and generator based on an ANTLR grammar and tree walking approach that transforms a mathematical formulation of an equation such as the Cahn-Hilliard family into simulation software in C++ or in NVIDIA’s Compute Unified Device Architecture (CUDA) language for programming Graphical Processing Units (GPUS). We present software architectural ideas, generated specimen code and detailed performance data on modern GPUs. We discuss how code generation techniques can be used to speed up code development and computational run time for related complex system simulation problems.

Author-supplied keywords

  • CUDA
  • GPU
  • automatic code generation
  • compiler
  • finite difference
  • grammar
  • partial differential equation
  • stencil

Get free article suggestions today

Mendeley saves you time finding and organizing research

Sign up here
Already have an account ?Sign in

Find this document

There are no full text links


  • K.A. Hawick

Cite this document

Choose a citation style from the tabs below

Save time finding and organizing research with Mendeley

Sign up for free