Imperial College London

ProfessorGerardGorman

Faculty of EngineeringDepartment of Earth Science & Engineering

Professor of Computational Science and Engineering
 
 
 
//

Contact

 

+44 (0)20 7594 9985g.gorman Website

 
 
//

Location

 

R4.92Royal School of MinesSouth Kensington Campus

//

Summary

 

Publications

Citation

BibTex format

@unpublished{Hückelheim:2019,
author = {Hückelheim, J and Kukreja, N and Narayanan, SHK and Luporini, F and Gorman, G and Hovland, P},
publisher = {arXiv},
title = {Automatic differentiation for adjoint stencil loops},
url = {https://arxiv.org/abs/1907.02818v1},
year = {2019}
}

RIS format (EndNote, RefMan)

TY  - UNPB
AB - Stencil loops are a common motif in computations including convolutional neural networks, structured-mesh solvers for partial differential equations, and image processing. Stencil loops are easy to parallelise, and their fast execution is aided by compilers, libraries, and domain-specific languages. Reverse-mode automatic differentiation, also known as algorithmic differentiation, autodiff, adjoint differentiation, or back-propagation, is sometimes used to obtain gradients of programs that contain stencil loops. Unfortunately, conventional automatic differentiation results in a memory access pattern that is not stencil-like and not easily parallelisable.In this paper we present a novel combination of automatic differentiation and loop transformations that preserves the structure and memory access pattern of stencil loops, while computing fully consistent derivatives. The generated loops can be parallelised and optimised for performance in the same way and using the same tools as the original computation. We have implemented this new technique in the Python tool PerforAD, which we release with this paper along with test cases derived from seismic imaging and computational fluid dynamics applications.
AU - Hückelheim,J
AU - Kukreja,N
AU - Narayanan,SHK
AU - Luporini,F
AU - Gorman,G
AU - Hovland,P
PB - arXiv
PY - 2019///
TI - Automatic differentiation for adjoint stencil loops
UR - https://arxiv.org/abs/1907.02818v1
UR - http://hdl.handle.net/10044/1/75885
ER -