Augur: Data-Parallel Probabilistic Modeling
Jean-Baptiste Tristan, Daniel T. Huang, Joseph Tassarotti, Adam Pocock, Stephen A. Green, Guy Lewis Steele · 2016
Implementing inference procedures for each new probabilistic model is time-consuming and error-prone. Probabilistic programming addresses this problem by allowing a user to specify the model and then automatically generating the inference procedure. To make this practical it is important to generate high per-formance inference code. In turn, on modern architectures, high performance re-quires parallel execution. In this paper we present Augur, a probabilistic modeling language and compiler for Bayesian networks designed to make effective use of data-parallel architectures such as GPUs. We show that the compiler can generate data-parallel inference code scalable to thousands of GPU cores by making use of the conditional independence relationships in the Bayesian network. 1