2019

DiffTaichi: Differentiable Programming for Physical Simulation

Hu, Yuanming, Anderson, Luke, Li, Tzu-Mao et al.

Understand

We present DiffTaichi, a new differentiable programming language tailored for building high-performance differentiable physical simulators.

  • Based on an imperative programming language, DiffTaichi generates gradients of simulation steps using source code transformations that preserve arithmetic intensity and parallelism.
  • A light-weight tape is used to record the whole simulation program structure and replay the gradient kernels in a reversed order, for end-to-end backpropagation.
  • We demonstrate the performance and productivity of our language in gradient-based learning and optimization tasks on 10 different physical simulators.

Reading the bibliography…