1. Reverse-Mode AD of Reduce-by-Index and Scan in Futhark
- Author
-
Bruun, Lotte Maria, Larsen, Ulrik Stuhr, Hinnerskov, Nikolaj, and Oancea, Cosmin
- Subjects
Computer Science - Programming Languages ,Computer Science - Distributed, Parallel, and Cluster Computing ,Computer Science - Performance - 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. We first 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 performance of the differentiated code in the context of GPU execution and highlights the impact of the proposed specializations as well as the strengths and weaknesses of differentiating at high level vs. low level (i.e., ``differentiating the memory'')., Comment: Presented at IFL'23 (i.e., 35th Symposium on Implementation and Application of Functional Languages, Aug. 29th - 31st, 2023, Braga, Portugal)
- Published
- 2023