  In this paper, an adjoint solver for the multigrid in time software library
XBraid is presented. XBraid provides a non-intrusive approach for simulating
unsteady dynamics on multiple processors while parallelizing not only in space
but also in the time domain. It applies an iterative multigrid reduction in
time algorithm to existing spatially parallel classical time propagators and
computes the unsteady solution parallel in time. Techniques from Automatic
Differentiation are used to develop a consistent discrete adjoint solver which
provides sensitivity information of output quantities with respect to design
parameter changes. The adjoint code runs backwards through the primal XBraid
actions and accumulates gradient information parallel in time. It is highly
non-intrusive as existing adjoint time propagators can easily be integrated
through the adjoint interface. The adjoint code is validated on
advection-dominated flow with periodic upstream boundary condition. It provides
similar strong scaling results as the primal XBraid solver and offers great
potential for speeding up the overall computational costs for sensitivity
analysis using multiple processors.
