A usability case study of algorithmic differentiation tools on the ISSM ice sheet model. (2nd November 2018)
- Record Type:
- Journal Article
- Title:
- A usability case study of algorithmic differentiation tools on the ISSM ice sheet model. (2nd November 2018)
- Main Title:
- A usability case study of algorithmic differentiation tools on the ISSM ice sheet model
- Authors:
- Hück, Alexander
Bischof, Christian
Sagebaum, Max
Gauger, Nicolas R.
Jurgelucks, Benjamin
Larour, Eric
Perez, Gilberto - Abstract:
- 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 andAbstract : 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. … (more)
- Is Part Of:
- Optimization methods and software. Volume 33:Number 4/6(2018)
- Journal:
- Optimization methods and software
- Issue:
- Volume 33:Number 4/6(2018)
- Issue Display:
- Volume 33, Issue 4/6 (2018)
- Year:
- 2018
- Volume:
- 33
- Issue:
- 4/6
- Issue Sort Value:
- 2018-0033-NaN-0000
- Page Start:
- 844
- Page End:
- 867
- Publication Date:
- 2018-11-02
- Subjects:
- algorithmic differentiation -- reverse mode -- usability -- operator overloading -- type exchange -- ISSM
68M20 -- 68U20 -- 86A40
Mathematical optimization -- Periodicals
Algorithms -- Periodicals
519.7 - Journal URLs:
- http://www.tandfonline.com/toc/goms20/current ↗
http://www.tandfonline.com/ ↗ - DOI:
- 10.1080/10556788.2017.1396602 ↗
- Languages:
- English
- ISSNs:
- 1055-6788
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - 6275.120000
British Library DSC - BLDSS-3PM
British Library HMNTS - ELD Digital store - Ingest File:
- 7352.xml