skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: On combining computational differentiation and toolkits for parallel scientific computing.

Abstract

Automatic differentiation is a powerful technique for evaluating derivatives of functions given in the form of a high-level programming language such as Fortran, C, or C++. The program is treated as a potentially very long sequence of elementary statements to which the chain rule of differential calculus is applied over and over again. Combining automatic differentiation and the organizational structure of toolkits for parallel scientific computing provides a mechanism for evaluating derivatives by exploiting mathematical insight on a higher level. In these toolkits, algorithmic structures such as BLAS-like operations, linear and nonlinear solvers, or integrators for ordinary differential equations can be identified by their standardized interfaces and recognized as high-level mathematical objects rather than as a sequence of elementary statements. In this note, the differentiation of a linear solver with respect to some parameter vector is taken as an example. Mathematical insight is used to reformulate this problem into the solution of multiple linear systems that share the same coefficient matrix but differ in their right-hand sides. The experiments reported here use ADIC, a tool for the automatic differentiation of C programs, and PETSC, an object-oriented toolkit for the parallel solution of scientific problems modeled by partial differential equations.

Authors:
; ;
Publication Date:
Research Org.:
Argonne National Lab., IL (US)
Sponsoring Org.:
US Department of Energy (US)
OSTI Identifier:
757546
Report Number(s):
ANL/MCS/CP-102072
TRN: AH200103%%15
DOE Contract Number:  
W-31109-ENG-38
Resource Type:
Conference
Resource Relation:
Conference: Euro-Par 2000, Munich (DE), 08/29/2000--09/01/2000; Other Information: PBD: 8 Jun 2000
Country of Publication:
United States
Language:
English
Subject:
99 GENERAL AND MISCELLANEOUS//MATHEMATICS, COMPUTING, AND INFORMATION SCIENCE; DIFFERENTIAL CALCULUS; DIFFERENTIAL EQUATIONS; FORTRAN; PARTIAL DIFFERENTIAL EQUATIONS; PROGRAMMING LANGUAGES; VECTORS; PARALLEL PROCESSING

Citation Formats

Bischof, C H, Buecker, H M, and Hovland, P D. On combining computational differentiation and toolkits for parallel scientific computing.. United States: N. p., 2000. Web.
Bischof, C H, Buecker, H M, & Hovland, P D. On combining computational differentiation and toolkits for parallel scientific computing.. United States.
Bischof, C H, Buecker, H M, and Hovland, P D. 2000. "On combining computational differentiation and toolkits for parallel scientific computing.". United States. https://www.osti.gov/servlets/purl/757546.
@article{osti_757546,
title = {On combining computational differentiation and toolkits for parallel scientific computing.},
author = {Bischof, C H and Buecker, H M and Hovland, P D},
abstractNote = {Automatic differentiation is a powerful technique for evaluating derivatives of functions given in the form of a high-level programming language such as Fortran, C, or C++. The program is treated as a potentially very long sequence of elementary statements to which the chain rule of differential calculus is applied over and over again. Combining automatic differentiation and the organizational structure of toolkits for parallel scientific computing provides a mechanism for evaluating derivatives by exploiting mathematical insight on a higher level. In these toolkits, algorithmic structures such as BLAS-like operations, linear and nonlinear solvers, or integrators for ordinary differential equations can be identified by their standardized interfaces and recognized as high-level mathematical objects rather than as a sequence of elementary statements. In this note, the differentiation of a linear solver with respect to some parameter vector is taken as an example. Mathematical insight is used to reformulate this problem into the solution of multiple linear systems that share the same coefficient matrix but differ in their right-hand sides. The experiments reported here use ADIC, a tool for the automatic differentiation of C programs, and PETSC, an object-oriented toolkit for the parallel solution of scientific problems modeled by partial differential equations.},
doi = {},
url = {https://www.osti.gov/biblio/757546}, journal = {},
number = ,
volume = ,
place = {United States},
year = {Thu Jun 08 00:00:00 EDT 2000},
month = {Thu Jun 08 00:00:00 EDT 2000}
}

Conference:
Other availability
Please see Document Availability for additional information on obtaining the full-text document. Library patrons may search WorldCat to identify libraries that hold this conference proceeding.

Save / Share: