Aggregated type handling in CoDiPack

  • The development of algorithmic differentiation (AD) tools focuses mostly on handling floating point types in the target language. Taping optimizations in these tools mostly focus on specific operations like matrix vector products. Aggregated types like std::complex are usually handled by specifying the AD type as a template argument. This approach provides exact results, but prevents the use of expression templates. If AD tools are extended and specialized such that aggregated types can be added to the expression framework, then this will result in reduced memory utilization and improve the timing for applications where aggregated types such as complex number or matrix vector operations are used. Such an integration requires a reformulation of the stored data per expression and a rework of the tape evaluation process. We will demonstrate the overheads on a synthetic benchmark and show the improvement when aggregated types are handled properly by the expression framework of the AD tool.

Download full text files

Export metadata

Additional Services

Search Google Scholar
Metadaten
Author:Max Sagebaum, Nicolas R. Gauger
URN:urn:nbn:de:hbz:386-kluedo-80617
DOI:https://doi.org/10.1002/pamm.202200208
ISSN:1617-7061
Parent Title (English):Proceedings in Applied Mathematics and Mechanics
Publisher:Wiley
Document Type:Article
Language of publication:English
Date of Publication (online):2024/04/17
Year of first Publication:2023
Publishing Institution:Rheinland-Pfälzische Technische Universität Kaiserslautern-Landau
Date of the Publication (Server):2024/04/17
Issue:22/1
Page Number:6
Source:https://onlinelibrary.wiley.com/doi/10.1002/pamm.202200208
Faculties / Organisational entities:Kaiserslautern - Fachbereich Informatik
DDC-Cassification:0 Allgemeines, Informatik, Informationswissenschaft / 004 Informatik
Collections:Open-Access-Publikationsfonds
Licence (German):Zweitveröffentlichung