  Dynamic control flow is an important technique often used to design
expressive and efficient deep learning computations for applications such as
text parsing, machine translation, exiting early out of deep models and so on.
The control flow divergence resulting from dynamic control flow makes batching,
an important optimization enabling high throughput and hardware utilization,
difficult to perform manually. In this paper, we present ACRoBat, a framework
that enables efficient automatic batching for dynamic deep learning
computations by performing hybrid static+dynamic compiler optimizations and
end-to-end tensor code generation. ACRoBat performs up to 8.5X better than
DyNet, a state-of-the-art framework for automatic batching, on an Nvidia
GeForce GPU.
