Publication: A usability case study of algorithmic differentiation tools on the ISSM ice sheet model
Introduction
Applications
Tools
Research Groups
Workshops
Publications
   List Publications
   Advanced Search
   Info
   Add Publications
My Account
About

A usability case study of algorithmic differentiation tools on the ISSM ice sheet model

- Article in a journal -
 

Author(s)
Alexander Hück , Christian Bischof , Max Sagebaum , Nicolas R. Gauger , Benjamin Jurgelucks , Eric Larour , Gilberto Perez

Published in
Special issue of Optimization Methods & Software: Advances in Algorithmic Differentiation Optimization Methods & Software

Editor(s)
Bruce Christianson, Shaun A. Forth, Andreas Griewank

Year
2018

Publisher
Taylor & Francis

Abstract
Algorithmic differentiation (ad) based on operator overloading is often the only feasible approach for applying ad in complex C++ software environments. Challenges pertaining to the introduction of an ad tool based on operator overloading have been studied in the past. However, in order to assess possible performance gains or to verify derivative values, it is advantageous to be able to apply more than one ad tool to a given code. Hence, in this work, we investigate usability issues when exchanging ad tools. Our study is based on the NASA/JPL/UCI Ice Sheet System Model (ISSM) which currently employs the ad tool ADOL-C. We introduce CoDiPack to ISSM, a more recent ad tool offering a similar set of features while promising performance improvements. In addition to the obvious type change for the ad-augmented float type, this transition requires the change to a different adjoint MPI library, adaptation of the MUMPS solver wrapper, and changes to the derivative seeding and extraction routines. We believe that these issues are fairly generic for numerical simulation software, and the issues we report on provide a blueprint for similar undertakings. We also believe that our experiences provide guidance towards the development of ad interfaces that support ad tool interoperability. In addition, we improve upon the memory management of the existing ADOL-C instrumentation, which exhibited considerable runtime problems for higher mesh resolutions. We conduct serial and parallel ISSM model runs on a 2D mass transport benchmark as well as a model of the Pine Island Glacier to verify the derivatives computed by both tools and report on runtime performance and memory usage. In comparison, the CoDiPack ad variant of ISSM runs faster with less memory overhead than the ADOL-C variant and, thus, enables future model runs with an increased number of mesh elements. But the existence of two different ad implementations provides added confidence in the correctness of derivatives, in particular for future ad tool versions.

Cross-References
Christianson2018Sio

BibTeX
@ARTICLE{
         Huck2018Auc,
       crossref = "Christianson2018Sio",
       author = "Alexander H{\"u}ck and Christian Bischof and Max Sagebaum and Nicolas R.
         Gauger and Benjamin Jurgelucks and Eric Larour and Gilberto Perez",
       title = "A usability case study of algorithmic differentiation tools on the {ISSM} ice sheet
         model",
       journal = "Optimization Methods \& Software",
       volume = "33",
       number = "4--6",
       pages = "844--867",
       year = "2018",
       publisher = "Taylor \& Francis",
       doi = "10.1080/10556788.2017.1396602",
       url = "https://doi.org/10.1080/10556788.2017.1396602",
       eprint = "https://doi.org/10.1080/10556788.2017.1396602",
       abstract = "Algorithmic differentiation (AD) based on operator overloading is often the only
         feasible approach for applying AD in complex C++ software environments. Challenges pertaining to the
         introduction of an AD tool based on operator overloading have been studied in the past. However, in
         order to assess possible performance gains or to verify derivative values, it is advantageous to be
         able to apply more than one AD tool to a given code. Hence, in this work, we investigate usability
         issues when exchanging AD tools. Our study is based on the NASA/JPL/UCI Ice Sheet System Model
         (ISSM) which currently employs the AD tool ADOL-C. We introduce CoDiPack to ISSM, a more recent AD
         tool offering a similar set of features while promising performance improvements. In addition to the
         obvious type change for the AD-augmented float type, this transition requires the change to a
         different adjoint MPI library, adaptation of the MUMPS solver wrapper, and changes to the derivative
         seeding and extraction routines. We believe that these issues are fairly generic for numerical
         simulation software, and the issues we report on provide a blueprint for similar undertakings. We
         also believe that our experiences provide guidance towards the development of AD interfaces that
         support AD tool interoperability. In addition, we improve upon the memory management of the existing
         ADOL-C instrumentation, which exhibited considerable runtime problems for higher mesh resolutions.
         We conduct serial and parallel ISSM model runs on a 2D mass transport benchmark as well as a model
         of the Pine Island Glacier to verify the derivatives computed by both tools and report on runtime
         performance and memory usage. In comparison, the CoDiPack AD variant of ISSM runs faster with less
         memory overhead than the ADOL-C variant and, thus, enables future model runs with an increased
         number of mesh elements. But the existence of two different AD implementations provides added
         confidence in the correctness of derivatives, in particular for future AD tool versions.",
       booktitle = "Special issue of Optimization Methods \& Software: Advances in
         Algorithmic Differentiation",
       editor = "Bruce Christianson and Shaun A. Forth and Andreas Griewank"
}


back
  

Contact:
autodiff.org
Username:
Password:
(lost password)