Abstract
We present and evaluate the Futhark implementation of reverse-mode automatic differentiation (AD) for the basic blocks of parallel programming: reduce, prefix sum (scan), and reduce-by-index (multi-reduce). We present derivations of general-case algorithms, and then discuss several specializations that result in efficient differentiation of most cases of practical interest. We report an experiment that evaluates the GPU performance of the differentiated code and highlights the impact of the proposed specializations as well as the strengths and weaknesses of differentiating at high level bulk-parallel operators vs "differentiating the memory", i.e., low-level implementations that access/update individual array elements.
| Original language | English |
|---|---|
| Title of host publication | Proceedings of the 2023 35th Symposium on Implementation and Application of Functional Languages, IFL 2023 |
| Publisher | Association for Computing Machinery |
| Publication date | 2023 |
| Pages | 1-14 |
| Article number | 14 |
| ISBN (Electronic) | 9798400716317 |
| DOIs | |
| Publication status | Published - 2023 |
| Event | 35th Symposium on Implementation and Application of Functional Languages, IFL 2023 - Braga, Portugal Duration: 29 Aug 2023 → 31 Aug 2023 |
Conference
| Conference | 35th Symposium on Implementation and Application of Functional Languages, IFL 2023 |
|---|---|
| Country/Territory | Portugal |
| City | Braga |
| Period | 29/08/2023 → 31/08/2023 |
Bibliographical note
Publisher Copyright:© 2023 ACM.
Cite this
- APA
- Standard
- Harvard
- Vancouver
- Author
- BIBTEX
- RIS