39. Devito: Fast Finite Difference Computation
Authors: Marcos de Aguiar (SENAI CIMATEC)Gerard Gorman (Imperial College London)Navjot Kukreja (SENAI CIMATEC)Michael Lange (Imperial College London)Mathias Louboutin (University of British Columbia)Felippe Zacarias (SENAI CIMATEC)
Abstract: Seismic imaging, used in energy exploration, is arguably the most compute and data intensive application in the private sector. The commonly used methods involve solving the wave equations numerically using finite difference formulations. Writing optimized code for these applications involves multiple man-years of effort that need to be repeated every time a new development needs to be factored in – for every target platform.
DeVito is a new tool for performing optimized Finite Difference (FD) computation from high-level symbolic problem definitions. The application developer needs to provide a differential equation in symbolic form. DeVito performs automated code generation and Just-In-Time (JIT) compilation based on this symbolic equation to create and execute highly optimized Finite Difference kernels on multiple computer platforms. DeVito has been designed to be used as part of complex workflows involving data flows across multiple applications over different nodes of a cluster.
Two-page extended abstract: pdf