@inproceedings{98d555af1b3a4b79a6b9c4912d536a1b,
title = "Transparent Checkpointing for Automatic Differentiation of Program Loops Through Expression Transformations",
abstract = "Automatic differentiation (AutoDiff) in machine learning is largely restricted to expressions used for neural networks (NN), with the depth rarely exceeding a few tens of layers. Compared to NN, numerical simulations typically involve iterative algorithms like time steppers that lead to millions of iterations. Even for modest-sized models, this may yield infeasible memory requirements when applying the adjoint method, also called backpropagation, to time-dependent problems. In this situation, checkpointing algorithms provide a trade-off between recomputation and storage. This paper presents the package Checkpointing.jl that leverages expression transformations in the programming language Julia and the package ChainRules.jl to automatically and transparently transform loop iterations into differentiated loops. The user may choose between various checkpointing algorithm schemes and storage devices. We describe the unique design of Checkpointing.jl and demonstrate its features on an automatically differentiated MPI implementation of Burgers' equation on the Polaris cluster at the Argonne Leadership Computing Facility.",
keywords = "Automatic differentiation, Checkpointing, Julia",
author = "Michel Schanen and Narayanan, {Sri Hari Krishna} and Sarah Williamson and Valentin Churavy and Moses, {William S.} and Ludger Paehler",
year = "2023",
month = jun,
day = "26",
doi = "10.1007/978-3-031-36024-4_37",
language = "English (US)",
isbn = "9783031360237",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer",
pages = "483--497",
editor = "Ji{\v r}{\'i} Miky{\v s}ka and {de Mulatier}, Cl{\'e}lia and Maciej Paszynski and Krzhizhanovskaya, {Valeria V.} and Dongarra, {Jack J.} and Sloot, {Peter M.A.}",
booktitle = "Computational Science - ICCS 2023 - 23rd International Conference, Proceedings",
address = "Germany",
}