Covering Resilience: A Recent Development for Binomial Checkpointing
|Title||Covering Resilience: A Recent Development for Binomial Checkpointing|
|Year of Publication||2016|
|Authors||Walther, A, Narayanan, SHK|
Nowadays, adjoint methods form a well established approach to compute gradient information in a very ecient way in terms of runtime. However, as soon as the considered process involves any kind of nonlinearity, the memory requirement to compute the corresponding adjoints is in principle proportional to the operation count of the underlying function, see, e.g., [1, Sec. 4.6]. For this reason, several very dierent checkpointing techniques have been developed over the last decades. For a summary of checkpointing approaches see [1, Chap. 12]. All these checkpointing strategies have in common that they use a small number of memory units (checkpoints) to store the system state at some intermediate states during the evaluation of the program that computes the function value. Subsequently, the recomputation of information that is needed for the adjoint computation but currently not available is performed using these checkpoints in an appropriate way. Hence, all checkpointing techniques represent a compromise between memory requirement and runtime increase.