Differentiate the Solver, Not the Equation: Reverse-Sweep Adjoints for Block Implicit Simulation
This work proposes solver-level differentiation, which differentiates the executed solver itself through the identical executed forward to machine precision at every solver depth; in a controlled same-codebase, same-GPU comparison it is 33x faster and uses 71x less memory than unrolled automatic differentiation.