Accelerating convolutions on the sphere with hybrid GPU/CPU kernel splitting
P.M. Sutter, Benjamin D. Wandelt, Franz Elsner

TL;DR
This paper introduces a hybrid GPU/CPU method for accelerating spherical convolutions, achieving over tenfold speedup in cosmic microwave background map simulations while maintaining controlled error bounds.
Contribution
The paper presents a novel kernel splitting technique that optimally combines GPU and CPU computations for fast, accurate spherical convolutions in CMB map simulations.
Findings
Achieves over tenfold speedup in CMB map convolution.
Provides models for computational cost and error estimation.
Maintains fractional rms error around 10^-5 in output maps.
Abstract
We present a general method for accelerating by more than an order of magnitude the convolution of pixelated function on the sphere with a radially-symmetric kernel. Our method splits the kernel into a compact real-space, and a compact spherical harmonic space component that can then be convolved in parallel using an inexpensive commodity GPU and a CPU, respectively. We provide models for the computational cost of both real-space and Fourier space convolutions and an estimate for the approximation error. Using these models we can determine the optimum split that minimizes the wall clock time for the convolution while satisfying the desired error bounds. We apply this technique to the problem of simulating a cosmic microwave background sky map at the resolution typical of the high resolution maps of the cosmic microwave background anisotropies produced by the Planck space craft. For the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsComputer Graphics and Visualization Techniques · Parallel Computing and Optimization Techniques · Computational Physics and Python Applications
