  Elliptical slice sampling, when adapted to linearly truncated multivariate
normal distributions, is a rejection-free Markov chain Monte Carlo method. At
its core, it requires analytically constructing an ellipse-polytope
intersection. The main novelty of this paper is an algorithm that computes this
intersection in $\mathcal{O}(m \log m)$ time, where $m$ is the number of linear
inequality constraints representing the polytope. We show that an
implementation based on this algorithm enhances numerical stability, speeds up
running time, and is easy to parallelize for launching multiple Markov chains.
