On the implementation of checkpointing with high-level algorithmic differentiation

05/16/2023
by   James R. Maddison, et al.
0

Automated code generation allows for a separation between the development of a model, expressed via a domain specific language, and lower level implementation details. Algorithmic differentiation can be applied symbolically at the level of the domain specific language, and the code generator reused to implement code required for an adjoint calculation. However the adjoint calculations are complicated by the well-known problem of storing or recomputing the forward model data required by the adjoint, and different checkpointing strategies have been developed to tackle this problem. This article describes the application of checkpointing strategies to high-level algorithmic differentiation, applied to codes developed using automated code generation. Since the high-level approach provides a simplified view of the model itself, the data required to restart the forward and data required to advance the adjoint can be identified, and the difference between them leveraged to implement checkpointing strategies of improved performance.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/12/2018

Algorithmic Differentiation for Domain Specific Languages

Algorithmic Differentiation (AD) can be used to automate the generation ...
research
07/26/2016

Forward-Mode Automatic Differentiation in Julia

We present ForwardDiff, a Julia package for forward-mode automatic diffe...
research
07/12/2023

Integrating Enzyme-generated functions into CoDiPack

In operator overloading algorithmic differentiation, it can be beneficia...
research
08/30/2016

Devito: automated fast finite difference computation

Domain specific languages have successfully been used in a variety of fi...
research
03/29/2016

Compilation as a Typed EDSL-to-EDSL Transformation

This article is about an implementation and compilation technique that i...
research
11/26/2016

BliStrTune: Hierarchical Invention of Theorem Proving Strategies

Inventing targeted proof search strategies for specific problem sets is ...
research
06/16/2023

Pengembangan Domain Specific Language Untuk Pengelolaan Data Warehouse

Efforts to improve the performance of services on the transaction at a b...

Please sign up or login with your details

Forgot password? Click here to reset