Adjoint Checkpointing in Nek5000

Michel Schanen
Seminar

Adjoint checkpointing is one of the core components of an adjoint model implementation. In Nek5000 it reduces the memory complexity by defining an efficient tradeoff between recomputation and storage of the primal solution at each timestep. This talk gives an overview of the adjoint checkpointing strategy currently employed in Nek5000 on Mira and KNL. Additionally, the implementation of a scalable lossy checkpoint compression is presented.