61
IRUS Total
Downloads

Architecture and performance of Devito, a system for automated stencil computation

File Description SizeFormat 
1807.03032.pdfAccepted version2.19 MBAdobe PDFView/Open
Title: Architecture and performance of Devito, a system for automated stencil computation
Authors: Luporini, F
Lange, M
Louboutin, M
Kukreja, N
Hückelheim, J
Yount, C
Witte, P
Kelly, PHJ
Herrmann, FJ
Gorman, G
Item Type: Journal Article
Abstract: Stencil computations are a key part of many high-performance computing applications, such as imageprocessing, convolutional neural networks, and finite-difference solvers for partial differential equations. Devitois a framework capable of generating highly-optimized code given symbolic equations expressed in Python,specialized in, but not limited to, affine (stencil) codes. The lowering process—from mathematical equations down to C++ code—is performed by the Devito compiler through a series of intermediate representations.Several performance optimizations are introduced, including advanced common sub-expressions elimination, tiling and parallelization. Some of these are obtained through well-established stencil optimizers, integratedin the back-end of the Devito compiler. The architecture of the Devito compiler, as well as the performance optimizations that are applied when generating code, are presented. The effectiveness of such performanceoptimizations is demonstrated using operators drawn from seismic imaging applications.
Issue Date: 26-Apr-2020
Date of Acceptance: 1-Dec-2019
URI: http://hdl.handle.net/10044/1/76863
DOI: 10.1145/3374916
ISSN: 0098-3500
Publisher: Association for Computing Machinery
Start Page: 1
End Page: 24
Journal / Book Title: ACM Transactions on Mathematical Software
Volume: 46
Issue: 1
Copyright Statement: © 2020 Owner/Author. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Transactions on Mathematical Software (2020) https://dl.acm.org/doi/10.1145/3374916
Sponsor/Funder: Argonne National Laboratory
Engineering & Physical Science Research Council (EPSRC)
Engineering & Physical Science Research Council (EPSRC)
Engineering & Physical Science Research Council (EPSRC)
Funder's Grant Number: 8F-30163
EP/R029423/1
EP/L000407/1
EP/P010040/1
Keywords: Numerical & Computational Mathematics
0802 Computation Theory and Mathematics
0806 Information Systems
Publication Status: Published
Article Number: ARTN 6
Appears in Collections:Computing
Earth Science and Engineering
Faculty of Engineering