Skip to main content

Hierarchical Automatic Differentiation by Vertex Elimination and Source Transformation

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2668))

Abstract

We present a hierarchical scheme to extend the applicability of automatic differentiation (AD) by vertex elimination from the basic block level to code with branches and subroutine calls. We introduce the EliAD tool that implements our scheme. Results from computational fluid dynamics (CFD) flux linearisations show runtime speedup by a typical factor of two over both finite-differencing and traditional forward and reverse modes of AD.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Griewank, A., Corliss, G.: Automatic Differentiation of Algorithms. SIAM, Philadelphia (1991)

    MATH  Google Scholar 

  2. Griewank, A.: Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation. SIAM, Philadelphia (2000)

    MATH  Google Scholar 

  3. Corliss, G., Faure, C., Griewank, A., Hascoët, L., Naumann, U., eds.: Automatic Differentiation of Algorithms: From Simulation to Optimization. Springer (2002)

    Google Scholar 

  4. Bischof, C., Carle, A., Khademi, P., Mauer, A.: ADIFOR 2.0: Automatic differentiation of Fortran 77 programs. IEEE Computational Science & Engineering 3 (1996) 18–32

    Article  Google Scholar 

  5. Giering, R., Kaminski, T.: Recipes for Adjoint Code Construction. ACM Trans. on Math. Software 24 (1998) 437–474

    Article  MATH  Google Scholar 

  6. Forth, S.A., Tadjouddine, M., Pryce, J.D., Reid, J.K.: Jacobian Code Generated by Source Transformation and Vertex Elimination is as Efficient as Hand-coding. ACM Trans. on Math. Software (2002) (submitted).

    Google Scholar 

  7. Forth, S.A., Tadjouddine, M.: CFD Newton Solvers with EliAD, An Elimination Automatic Differentiation Tool. In: Int. Conf. on CFD. Springer-Verlag, Sydney (2003) (to appear).

    Google Scholar 

  8. Tadjouddine, M., Forth, S.A., Pryce, J.D., Reid, J.K.: Performance Issues for Vertex Elimination Methods in Computing Jacobians using Automatic Differentiation. In Sloot, P.M., Tan, C.K., Dongarra, J.J., Hoekstra, A.G., eds.: ICCS, Part II. Volume 2330 of LNCS. Springer, Amsterdam (2002) 1077–1086

    Google Scholar 

  9. Griewank, A., Reese, S.: On the calculation of Jacobian matrices by the Markowitz rule. [1] 126–135

    Google Scholar 

  10. Naumann, U.: Elimination techniques for cheap Jacobians. [3] 241–246

    Google Scholar 

  11. Bischof, C., Roh, L., Mauer, A.: ADIC—An Extensible Automatic Differentiation Tool for ANSI-C. Software-Practice and Experience 27 (1997) 1427–1456

    Article  Google Scholar 

  12. Aho, A., Sethi, R., Ullman, J.: Compilers: principles, techniques, and tools. Addison-Wesley (1986)

    Google Scholar 

  13. Zima, H., Chapman, B.: Supercompilers for Parallel and Vector Computers. Addison-Wesley Publishing Company (1991)

    Google Scholar 

  14. Parr, T., Lilly, J., Wells, P., Klaren, R., Illouz, M., Mitchell, J., Stanchfield, S., Coker, J., Zukowski, M., Flack, C.: ANTLR Reference Manual. Technical report, MageLang Institute’s jGuru.com (2001) See http://www.antlr.org/doc/.

  15. Naumann, U., Forth, S.A., Tadjouddine, M., Pryce, J.D.: A Standard Interface for Elimination Sequences in Automatic Differentiation (Version 1). AMOR Report 01/3, Cranfield University (RMCS Shrivenham)Swindon SN6 8LA, UK (2001)

    Google Scholar 

  16. Bischof, C.H., Haghighat, M.R.: Hierarchical approaches to automatic differentiation. In Berz, M., Bischof, C., Corliss, G., Griewank, A., eds.: Computational Differentiation: Tech., Appli., and Tools. SIAM, Philadelphia, Penn. (1996) 83–94

    Google Scholar 

  17. Tadjouddine, M., Forth, S.A., Pryce, J.D.: AD tools and prospects for optimal AD in CFD flux Jacobian calculations. [3] 247–252

    Google Scholar 

  18. Creusillet, B., Irigoin, F.: Exact vs. Approximate Array Region Analyses. In Sehr, D.C., Banerjee, U., Gelernter, D., Nicolau, A., Padua, D.A., eds.: Lang. and Comp. for Parallel Computing. Volume 1239 of LNCS. Springer (1997) 86–100

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Tadjouddine, M., Forth, S.A., Pryce, J.D. (2003). Hierarchical Automatic Differentiation by Vertex Elimination and Source Transformation. In: Kumar, V., Gavrilova, M.L., Tan, C.J.K., L’Ecuyer, P. (eds) Computational Science and Its Applications — ICCSA 2003. ICCSA 2003. Lecture Notes in Computer Science, vol 2668. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44843-8_13

Download citation

  • DOI: https://doi.org/10.1007/3-540-44843-8_13

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-40161-2

  • Online ISBN: 978-3-540-44843-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics