Affiliation:
1. Imperial College London, London, United Kingdom
2. Georgia Institute of Technology
3. European Centre for Medium-Range Weather Forecasts
4. Intel Corporation
Abstract
Stencil computations are a key part of many high-performance computing applications, such as image processing, convolutional neural networks, and finite-difference solvers for partial differential equations. Devito is 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, integrated in the backend 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 performance optimizations is demonstrated using operators drawn from seismic imaging applications.
Funder
Imperial College London Intel Parallel Computing Centre
Imperial College London Department of Computing
U.S. Department of Energy, Office of Science, Office of Advanced Scientific Computing Research, Applied Mathematics and Computer Science
Georgia Research Alliance
Engineering and Physical Sciences Research Council
Georgia Institute of Technology
Publisher
Association for Computing Machinery (ACM)
Subject
Applied Mathematics,Software
Cited by
61 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献