We’re cosmologists using CUDA.jl to analyze how the light given off by the big bang (the so-called Cosmic Microwave Background) has been distorted due to gravitational lensing very slightly bending its trajectory as it has been traveling to us across the universe over the last ~13 billion years. This lets us infer properties of the matter and dark matter in the universe, as well as the details of the universe’s expansion and geometry.
The analysis boils down to a high-dimensional hierarchical Bayesian inference problem (~1-10million dimensions) which we explore using Hamiltonian Monte-Carlo running multiple batched MCMC chains on GPU with CUDA.jl, with the necessary gradients provided by automatic differentiation. Speedups over CPU can be 10-100x, and its fair to say the analysis would be impossible without GPU.
We run the MCMC chains mostly at the computing center NERSC generally on ~1-16 Tesla V100s at a time. We’re excited about NERSC’s soon-to-be pre-exascale GPU-heavy system, Perlmutter, that should allow us to analyze much larger datasets, of the kind that next generation Cosmic Microwave Background experiments will be producing. (Btw @jblaschke has a poster at JuliaCon about Julia+CUDA+Perlmutter which you should check out!)
The code is CMBLensing.jl and some recent publications include the theory and application to data from the South Pole Telescope. Happy to provide anything else that might be useful!