1887
PDF

Abstract

Summary

We describe Devito, an open-source embedded domain specific language (DSL) in Python for developing parallel and highly optimized finite difference solvers - primarily targeting seismic imaging applications such as reverse-time migration (RTM) and full-waveform inversion (FWI). The two key novel aspects of this technology that distinguish it from existing frameworks is the use of a symbolic mathematics engine, SymPy, to enable geophysicists to quickly and easily implement new methods that are easily verifiable, and the use of compiler techniques to transform the high-level implementation into highly optimized and parallel C code on the fly. A key benefit of taking this embedded DSL compiler technology approach is that it also provides a robust strategy for application code performance portability. We demonstrate the generation and automated execution of highly optimized stencil code for standard operators such as forward, adjoint and gradient operators from only a few lines of Python and SymPy. We also demonstrate how Devito can be integrated with Dask to implement highly scalable RTM on Cloud and Supercomputing platforms.

Loading

Article metrics loading...

/content/papers/10.3997/2214-4609.201803085
2018-09-21
2024-04-19
Loading full text...

Full text loading...

http://instance.metastore.ingenta.com/content/papers/10.3997/2214-4609.201803085
Loading
This is a required field
Please enter a valid email address
Approval was a Success
Invalid data
An Error Occurred
Approval was partially successful, following selected items could not be processed due to error