Abstract
We present a technique for applying reverse mode automatic differentiation (AD) on a non-recursive second-order functional array language that supports nested parallelism and is primarily aimed at efficient GPU execution. The key idea is to eliminate the need for a tape by relying on redundant execution to bring into each new scope all program variables that may be needed by the differentiated code. Efficient execution is enabled by the observation that perfectly nested scopes do not introduce re-execution and that such perfect nests can be readily produced by application of known compiler transformations. Our technique differentiates loops and bulk-parallel operators-e.g., map, reduce(-by-index), scan, and scatter-by specific rewrite rules and aggressively optimizes the resulting nested-parallel code. We report an evaluation that compares with established AD solutions and demonstrates competitive performance on ten common benchmarks from recent applied AD literature.
Original language | English |
---|---|
Title of host publication | Proceedings of SC 2022 : International Conference for High Performance Computing, Networking, Storage and Analysis |
Number of pages | 15 |
Publisher | IEEE Computer Society Press |
Publication date | 2022 |
ISBN (Electronic) | 9781665454445 |
DOIs | |
Publication status | Published - 2022 |
Event | 2022 International Conference for High Performance Computing, Networking, Storage and Analysis, SC 2022 - Dallas, United States Duration: 13 Nov 2022 → 18 Nov 2022 |
Conference
Conference | 2022 International Conference for High Performance Computing, Networking, Storage and Analysis, SC 2022 |
---|---|
Country/Territory | United States |
City | Dallas |
Period | 13/11/2022 → 18/11/2022 |
Sponsor | ACM's Special Interest Group on High Performance Computing (SIGHPC), Association for Computing Machinery, IEEE Computer Society, IEEE's Technical Committee on High Performance Computing (TCHPC) |
Series | International Conference for High Performance Computing, Networking, Storage and Analysis, SC |
---|---|
Volume | 2022-November |
ISSN | 2167-4329 |
Bibliographical note
Publisher Copyright:© 2022 IEEE.
Keywords
- automatic differentiation
- compilers
- functional data parallel language
- GPGPU