Summary
The data flow of a numerical program is reversed in its adjoint. We discuss the combinatorial optimization problem that aims to find optimal checkpointing schemes at the level of call trees. For a given amount of persistent memory the objective is to store selected arguments and/or results of subroutine calls such that the overall computational effort (the total number of floating-point operations performed by potentially repeated forward evaluations of the program) of the data-flow reversal is minimized. CALL TREE REVERSAL is shown to be NP-complete.
Keywords
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Berz, M., Bischof, C., Corliss, G., Griewank, A. (eds.): Computational Differentiation: Techniques, Applications, and Tools, Proceedings Series. SIAM (1996)
Bücker, M., Corliss, G., Hovland, P., Naumann, U., Norris, B. (eds.): Automatic Differentiation: Applications, Theory, and Tools, no. 50 in Lecture Notes in Computational Science and Engineering. Springer, Berlin (2005)
Corliss, G., Faure, C., Griewank, A., Hascoët, L., Naumann, U. (eds.): Automatic Differentiation of Algorithms – From Simulation to Optimization. Springer (2002)
Corliss, G., Griewank, A. (eds.): Automatic Differentiation: Theory, Implementation, and Application, Proceedings Series. SIAM (1991)
Garey, M., Johnson, D.: Computers and Intractability - A Guide to the Theory of NP-completeness. W. H. Freeman and Company (1979)
Giering, R., Kaminski, T.: Recomputations in reverse mode AD. In: [3], chap. 33, pp. 283–291 (2001)
Griewank, A.: Achieving logarithmic growth of temporal and spatial complexity in reverse automatic differentiation. Optimization Methods and Software 1, 35–54 (1992)
Griewank, A.: Evaluating Derivatives. Principles and Techniques of Algorithmic Differentiation. SIAM (2000)
Griewank, A., Juedes, D., Utke, J.: ADOL–C, a package for the automatic differentiation of algorithms written in C/C++. ACM Transactions on Mathematical Software 22(2), 131–167 (1996)
Hascoët, L., Araya-Polo, M.: The adjoint data-flow analyses: Formalization, properties, and applications. In: [2], pp. 135–146. Springer (2005)
Hascoët, L., Naumann, U., Pascual, V.: To-be-recorded analysis in reverse mode automatic differentiation. Future Generation Computer Systems 21, 1401–1417 (2005)
Hascoët, L., Pascual, V.: Tapenade 2.1 user’s guide. Technical report 300, INRIA (2004). URL http://www.inria.fr/rrrt/rt-0300.html
Naumann, U.: DAG reversal is NP-complete. J. Discr. Alg. (2008). To appear.
Naumann, U., Riehme, J.: A differentiation-enabled Fortran 95 compiler. ACM Transactions on Mathematical Software 31(4), 458–474 (2005)
Utke, J., Naumann, U., Fagan, M., Tallent, N., Strout, M., Heimbach, P., Hill, C., Wunsch, C.: OpenAD/F: A modular, open-source tool for automatic differentiation of Fortran codes. ACM Transactions on Mathematical Software 34(4) (2008). To appear.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Naumann, U. (2008). Call Tree Reversal is NP-Complete. In: Bischof, C.H., Bücker, H.M., Hovland, P., Naumann, U., Utke, J. (eds) Advances in Automatic Differentiation. Lecture Notes in Computational Science and Engineering, vol 64. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-68942-3_2
Download citation
DOI: https://doi.org/10.1007/978-3-540-68942-3_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-68935-5
Online ISBN: 978-3-540-68942-3
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)