• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

To Be Recorded” Analysis in Reverse-Mode Automatic Differentiation, in "Future Generation Computer Systems", vol. 21, n o 8 (2004)

by L HASCOËT, U NAUMANN, V PASCUAL
Add To MetaCart

Tools

Sorted by:
Results 1 - 10 of 13
Next 10 →

Toward differentiation-enabled Fortran 95 compiler technology

by Uwe Naumann, Rwth Aachen - In Proceedings of the 2003 ACM Symposium on Applied Computing , 2003
"... The availability of first derivatives of vector functions is crucial for the robustness and efficiency of a large number of numerical algorithms. An upcoming new version of the differentiation-enabled NAGWare Fortran 95 compiler is described that uses programming language extensions and a semantic c ..."
Abstract - Cited by 14 (10 self) - Add to MetaCart
The availability of first derivatives of vector functions is crucial for the robustness and efficiency of a large number of numerical algorithms. An upcoming new version of the differentiation-enabled NAGWare Fortran 95 compiler is described that uses programming language extensions and a semantic code transformation known as automatic differentiation to provide Jacobians of numerical programs with machine accuracy. We describe a new user interface as well as the relevant algorithmic details. In particular, we focus on the source transformation approach that generates locally optimal gradient code for single assignments by vertex elimination in the linearized computational graph. Extensive tests show the superiority of this method over the current overloading-based approach. The robustness and convenience of the new compiler-feature is illustrated by various case studies.

OpenAD/F: A Modular, Open-Source Tool for Automatic Differentiation of Fortran Codes

by Jean Utke, Uwe Naumann, Mike Fagan, Nathan Tallent, Michelle Strout, Patrick Heimbach, Chris Hill, Carl Wunsch
"... The OpenAD/F tool allows the evaluation of derivatives of functions defined by a Fortran program. The derivative evaluation is performed by a Fortran code resulting from the analysis and transformation of the original program that defines the function of interest. OpenAD/F has been designed with a ..."
Abstract - Cited by 10 (6 self) - Add to MetaCart
The OpenAD/F tool allows the evaluation of derivatives of functions defined by a Fortran program. The derivative evaluation is performed by a Fortran code resulting from the analysis and transformation of the original program that defines the function of interest. OpenAD/F has been designed with a particular emphasis on modularity, flexibility, and the use of open source components. While the code transformation follows the basic principles of automatic differentiation, the tool implements new algorithmic approaches at various levels, for example, for basic block preaccumulation and call graph reversal. Unlike most other automatic differentiation tools, OpenAD/F uses components provided by the OpenAD framework, which supports a comparatively easy extension of the code transformations in a language-independent fashion. It uses code analysis results implemented in the OpenAnalysis component. The interface to the language-independent transformation engine is an XML-based format, specified through an XML schema. The implemented transformation algorithms allow efficient derivative computations using locally optimized cross-country sequences

The Data-Flow Equations of Checkpointing in Reverse Automatic Differentiation”, in Alexandrov et

by Benjamin Dauvergne, Laurent Hascoët - Computational Science – ICCS 2006 , 2006
"... Abstract. Checkpointing is a technique to reduce the memory consumption of adjoint programs produced by reverse Automatic Differentiation. However, checkpointing also uses a non-negligible memory space for the so-called “snapshots”. We analyze the data-flow of checkpointing, yielding a precise chara ..."
Abstract - Cited by 6 (1 self) - Add to MetaCart
Abstract. Checkpointing is a technique to reduce the memory consumption of adjoint programs produced by reverse Automatic Differentiation. However, checkpointing also uses a non-negligible memory space for the so-called “snapshots”. We analyze the data-flow of checkpointing, yielding a precise characterization of all possible memory-optimal options for snapshots. This characterization is formally derived from the structure of checkpoints and from classical data-flow equations. In particular, we select two very different options and study their behavior on a number of real codes. Although no option is uniformly better, the so-called “lazy-snapshot ” option appears preferable in general. 1

Hybrid static/dynamic activity analysis

by Barbara Kreaseck, Luis Ramos, Scott Easterday, Michelle Strout - In Proceedings of the 3rd International Workshop on Automatic Differentiation Tools and Applications (ADTA’04 , 2006
"... Abstract. In forward mode Automatic Differentiation, the derivative program computes a function f and its derivatives, f ′. Activity analysis is important for AD. Our results show that when all variables are active, the runtime checks required for dynamic activity analysis incur a significant overhe ..."
Abstract - Cited by 2 (0 self) - Add to MetaCart
Abstract. In forward mode Automatic Differentiation, the derivative program computes a function f and its derivatives, f ′. Activity analysis is important for AD. Our results show that when all variables are active, the runtime checks required for dynamic activity analysis incur a significant overhead. However, when as few as half of the input variables are inactive, dynamic activity analysis enables an average speedup of 28 % on a set of benchmark problems. We investigate static activity analysis combined with dynamic activity analysis as a technique for reducing the overhead of dynamic activity analysis. 1

Adjoint code by source transformation with OpenAD/F

by Uwe Naumann Et Al, Uwe Naumann, Jean Utke, Patrick Heimbach, Chris Hill, Derya Ozyurt, Mike Fagan, Nathan Tallent, Michelle Strout , 2006
"... Abstract. This document reports on recent advances in the development of the adjoint code generator OpenAD/F. We give an overview of the software design, and we discuss case studies that illustrate the feasibility of adjoint code generation. Our main target application is the MIT General Circulation ..."
Abstract - Cited by 1 (0 self) - Add to MetaCart
Abstract. This document reports on recent advances in the development of the adjoint code generator OpenAD/F. We give an overview of the software design, and we discuss case studies that illustrate the feasibility of adjoint code generation. Our main target application is the MIT General Circulation Model — a numerical model designed for study of the atmosphere, ocean, and climate. 1

Development and first applications of TAC++, in

by Michael Voßbeck, Ralf Giering, Thomas Kaminski - Utke (Eds.), Advances in Automatic Differentiation , 2008
"... Summary. The paper describes the development of the software tool Transformation of Algorithms in C++ (TAC++) for automatic differentiation (AD) of C(++) codes by sourceto-source translation. We have transferred to TAC++ a subset of the algorithms from its well-established Fortran equivalent, Transf ..."
Abstract - Cited by 1 (0 self) - Add to MetaCart
Summary. The paper describes the development of the software tool Transformation of Algorithms in C++ (TAC++) for automatic differentiation (AD) of C(++) codes by sourceto-source translation. We have transferred to TAC++ a subset of the algorithms from its well-established Fortran equivalent, Transformation of Algorithms in Fortran (TAF). TAC++ features forward and reverse as well as scalar and vector modes of AD. Efficient higher order derivative code is generated by multiple application of TAC++. High performance of the generated derivate code is demonstrated for five examples from application fields covering remote sensing, computer vision, computational finance, and aeronautics. For instance, the run time of the adjoints for simultaneous evaluation of the function and its gradient is between 1.9 and 3.9 times slower than that of the respective function codes. Options for further enhancement are discussed.

Linearity Analysis for Automatic Differentiation

by Michelle Mills Strout, Paul Hovland
"... Linearity analysis determines which variables depend on which other variables and whether the dependence is linear or nonlinear. One of the many applications of this analysis is determining whether a loop involves only linear loop-carried dependences and therefore the adjoint of the loop may be rev ..."
Abstract - Cited by 1 (1 self) - Add to MetaCart
Linearity analysis determines which variables depend on which other variables and whether the dependence is linear or nonlinear. One of the many applications of this analysis is determining whether a loop involves only linear loop-carried dependences and therefore the adjoint of the loop may be reversed and fused with the computation of the original function. This paper specifies the data-flow equations that compute linearity analysis. In addition, the paper describes using linearity analysis with array dependence analysis to determine whether a loop-carried dependence is linear or nonlinear.

Automatic Differentiation for GPU-Accelerated 2D/3D Registration

by Markus Grabner, Thomas Pock, Tobias Gross, Bernhard Kainz
"... Summary. A common task in medical image analysis is the alignment of data from different sources, e.g., X-ray images and computed tomography (CT) data. Such a task is generally known as registration. We demonstrate the applicability of automatic differentiation (AD) techniques to a class of 2D/3D re ..."
Abstract - Cited by 1 (0 self) - Add to MetaCart
Summary. A common task in medical image analysis is the alignment of data from different sources, e.g., X-ray images and computed tomography (CT) data. Such a task is generally known as registration. We demonstrate the applicability of automatic differentiation (AD) techniques to a class of 2D/3D registration problems which are highly computationally intensive and can therefore greatly benefit from a parallel implementation on recent graphics processing units (GPUs). However, being designed for graphics applications, GPUs have some restrictions which conflict with requirements for reverse mode AD, in particular for taping and TBR analysis. We discuss design and implementation issues in the presence of such restrictions on the target platform and present a method which can register a CT volume data set (512 × 512 × 288 voxels) with three X-ray images (512 × 512 pixels each) in 20 seconds on a GeForce 8800GTX graphics card.

Design and Implementation of a Context-Sensitive, Flow-Sensitive Activity Analysis Algorithm for Automatic Differentiation

by Jaewook Shin, Priyadarshini Malusare, Paul D. Hovl
"... Summary. Automatic differentiation (AD) has been expanding its role in scientific computing. While several AD tools have been actively developed and used, a wide range of problems remain to be solved. Activity analysis allows AD tools to generate derivative code for fewer variables, leading to a fas ..."
Abstract - Add to MetaCart
Summary. Automatic differentiation (AD) has been expanding its role in scientific computing. While several AD tools have been actively developed and used, a wide range of problems remain to be solved. Activity analysis allows AD tools to generate derivative code for fewer variables, leading to a faster run time of the output code. This paper describes a new contextsensitive, flow-sensitive (CSFS) activity analysis, which is developed by extending an existing context-sensitive, flow-insensitive (CSFI) activity analysis. Our experiments with eight benchmarks show that the new CSFS activity analysis is more than 27 times slower but reduces 8 overestimations for the MIT General Circulation Model (MITgcm) and 1 for an ODE solver (c2) compared with the existing CSFI activity analysis implementation. Although the number of reduced overestimations looks small, the additionally identified passive variables may significantly reduce tedious human effort in maintaining a large code base such as MITgcm. Key words: automatic differentiation, activity analysis 1

Adjoint Code by Source Transformation with

by Mike Fagan, Nathan Tallent, Michelle Strout
"... Abstract. This document reports on recent advances in the development of the adjoint code generator OpenAD/F. We give an overview of the software design, and we discuss case studies that illustrate the feasibility of adjoint code generation. Our main target application is the MIT General Circulation ..."
Abstract - Add to MetaCart
Abstract. This document reports on recent advances in the development of the adjoint code generator OpenAD/F. We give an overview of the software design, and we discuss case studies that illustrate the feasibility of adjoint code generation. Our main target application is the MIT General Circulation Model-- a numerical model designed for study of the atmosphere, ocean, and climate.
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University