Event-Based Automatic Differentiation of OpenMP with OpDiLib

02/23/2021
by   Johannes Blühdorn, et al.
0

We present the new software OpDiLib, a universal add-on for classical operator overloading AD tools that enables the automatic differentiation (AD) of OpenMP parallelized code. With it, we establish support for OpenMP features in a reverse mode operator overloading AD tool to an extent that was previously only reported on in source transformation tools. We achieve this with an event-based implementation ansatz that is unprecedented in AD. Combined with modern OpenMP features around OMPT, we demonstrate how it can be used to achieve differentiation without any additional modifications of the source code; neither do we impose a priori restrictions on the data access patterns, which makes OpDiLib highly applicable. For further performance optimizations, restrictions like atomic updates on adjoint variables can be lifted in a fine-grained manner. OpDiLib can also be applied in a semi-automatic fashion via a macro interface, which supports compilers that do not implement OMPT. We demonstrate the applicability of OpDiLib for a pure operator overloading approach in a hybrid parallel environment. We quantify the cost of atomic updates on adjoint variables and showcase the speedup and scaling that can be achieved with the different configurations of OpDiLib in both the forward and the reverse pass.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/25/2018

Tangent: Automatic differentiation using source-code transformation for dynamically typed array programming

The need to efficiently calculate first- and higher-order derivatives of...
research
12/28/2022

Reverse-Mode Automatic Differentiation of Compiled Programs

Tools for algorithmic differentiation (AD) provide accurate derivatives ...
research
09/21/2017

High-Performance Derivative Computations using CoDiPack

There are several AD tools available, which all implement different stra...
research
10/18/2018

Dynamic Automatic Differentiation of GPU Broadcast Kernels

We show how forward-mode automatic differentiation (AD) can be employed ...
research
04/13/2023

Fast And Automatic Floating Point Error Analysis With CHEF-FP

As we reach the limit of Moore's Law, researchers are exploring differen...
research
04/04/2023

Automatic Differentiation of Binned Likelihoods With Roofit and Clad

RooFit is a toolkit for statistical modeling and fitting used by most ex...
research
05/24/2019

Landau: language for dynamical systems with automatic differentiation

Most numerical solvers used to determine free variables of dynamical sys...

Please sign up or login with your details

Forgot password? Click here to reset