Rounding error using low precision approximate random variables
Oliver Sheridan-Methven, Michael Giles
TL;DR
The paper analyzes rounding errors when solving stochastic differential equations with the Euler–Maruyama scheme using low-precision approximate random variables. It derives a leading-order error model with two contributions, $\eta$ (zero-mean martingale-like) and $\eta'$ (smaller, possibly nonzero-mean), and shows how this model interacts with nested multilevel Monte Carlo (MLMC) incorporating approximate randomness. The authors establish a bound, $\mathbb{E}(|\widehat{X}_N - \overline{X}_N|^2) \leq C N ρ^2$, and demonstrate how precision and Kahan compensated summation affect two- and four-way differences, guiding practical hardware choices. Their results indicate that single precision offers substantial speedups across most levels, while half precision delivers the best gains on the coarsest levels, with Kahan summation further extending applicability; overall, the framework enables fast, accurate stochastic simulations by coupling low-precision arithmetic, approximate randomness, and nested MLMC.
Abstract
For numerical approximations to stochastic differential equations using the Euler-Maruyama scheme, we propose incorporating approximate random variables computed using low precisions, such as single and half precision. We propose and justify a model for the rounding error incurred, and produce an average case error bound for two and four way differences, appropriate for regular and nested multilevel Monte Carlo estimations. By considering the variance structure of multilevel Monte Carlo correction terms in various precisions with and without a Kahan compensated summation, we compute the potential speed ups offered from the various precisions. We find single precision offers the potential for approximate speed improvements by a factor of 7 across a wide span of discretisation levels. Half precision offers comparable improvements for several levels of coarse simulations, and even offers improvements by a factor of 10-12 for the very coarsest few levels.
