GSoC 2023 Projects Related To Clad
Clad enables automatic differentiation (AD) for C++. It is based on LLVM compiler infrastructure and is a plugin for Clang compiler. Clad is based on source code transformation. Given C++ source code of a mathematical function, it can automatically generate C++ code for computing derivatives of the function.
Project Proposals
-
Explore advanced activity-analysis and optimizations in reverse-mode automatic differentiation.
-
Enable reverse-mode automatic differentiation of (CUDA) GPU kernels using Clad
-
Add support for differentiating with respect to multidimensional arrays (or pointers) in Clad
-
Improve automatic differentiation of object-oriented paradigms using Clad
-
Implement vector mode in forward mode automatic differentiation in Clad