Exploiting parallelism in automatic differentiation
ICS '91 Proceedings of the 5th international conference on Supercomputing
Evaluating derivatives: principles and techniques of algorithmic differentiation
Evaluating derivatives: principles and techniques of algorithmic differentiation
Parallel programming in OpenMP
Parallel programming in OpenMP
Automatic differentiation of algorithms: from simulation to optimization
Automatic differentiation of algorithms: from simulation to optimization
Adifor 2.0: Automatic Differentiation of Fortran 77 Programs
IEEE Computational Science & Engineering
On the Use of a Differentiated Finite Element Package for Sensitivity Analysis
ICCS '01 Proceedings of the International Conference on Computational Sciences-Part I
A class of OpenMP applications involving nested parallelism
Proceedings of the 2004 ACM symposium on Applied computing
Automatic generation of parallel code for Hessian computations
IWOMP'05/IWOMP'06 Proceedings of the 2005 and 2006 international conference on OpenMP shared memory parallel programming
Solving a least-squares problem with algorithmic differentiation and OpenMP
Euro-Par'13 Proceedings of the 19th international conference on Parallel Processing
Hi-index | 0.00 |
Derivatives of almost arbitrary functions can be evaluated efficiently by automatic differentiation whenever the functions are given in the form of computer programs in a high-level programming language such as Fortran, C, or C++. Furthermore, in contrast to numerical differentiation where derivatives are approximated, automatic differentiation generates derivatives that are accurate up to machine precision. The so-called forward mode of automatic differentiation computes derivatives by carrying forward a gradient associated with each intermediate variable simultaneously with the evaluation of the function itself. It is shown how software tools implementing the technology of automatic differentiation can benefit from simple concepts of shared memory programming to parallelize the gradient operations. The feasibility of our approach is demonstrated by numerical experiments. They were performed with a code that was generated automatically by the Adifor system and augmented with OpenMP directives.