Computational advances in gravitational microlensing: a comparison of CPU, GPU, and parallel, large data codes
arXiv:1005.5198 · doi:10.1016/j.newast.2010.05.008
Abstract
To assess how future progress in gravitational microlensing computation at high optical depth will rely on both hardware and software solutions, we compare a direct inverse ray-shooting code implemented on a graphics processing unit (GPU) with both a widely-used hierarchical tree code on a single-core CPU, and a recent implementation of a parallel tree code suitable for a CPU-based cluster supercomputer. We examine the accuracy of the tree codes through comparison with a direct code over a much wider range of parameter space than has been feasible before. We demonstrate that all three codes present comparable accuracy, and choice of approach depends on considerations relating to the scale and nature of the microlensing problem under investigation. On current hardware, there is little difference in the processing speed of the single-core CPU tree code and the GPU direct code, however the recent plateau in single-core CPU speeds means the existing tree code is no longer able to take advantage of Moore's law-like increases in processing speed. Instead, we anticipate a rapid increase in GPU capabilities in the next few years, which is advantageous to the direct code. We suggest that progress in other areas of astrophysical computation may benefit from a transition to GPUs through the use of "brute force" algorithms, rather than attempting to port the current best solution directly to a GPU language -- for certain classes of problems, the simple implementation on GPUs may already be no worse than an optimised single-core CPU version.
11 pages, 4 figures, accepted for publication in New Astronomy
References in corpus (10)
- High Performance Direct Gravitational N-body Simulations on Graphics Processing Units -- II: An implementation in CUDA
- Microlensing variability in the gravitationally lensed quasar QSO 2237+0305 = the Einstein Cross. II. Energy profile of the accretion disk
- The multiple quasar Q2237+0305 under a microlensing caustic
- A microlensing study of the accretion disc in the quasar MG 0414+0534
- Teraflop per second gravitational lensing ray-shooting using graphics processing units
- The Graphics Card as a Streaming Computer
- Parallel Algorithm for Solving Kepler's Equation on Graphics Processing Units: Application to Analysis of Doppler Exoplanet Searches
- Microlensing of a Biconical Broad Line Region
- Gravitational Microlensing: A parallel, large-data implementation
- Introduction to Gravitational Microlensing
Cited by in corpus (17)
- Microlensing of the broad line region in 17 lensed quasars
- GERLUMPH Data Release 1: High-resolution cosmological microlensing magnification maps and eResearch tools
- Visualizing Astronomical Data with Blender
- Astrophysical Supercomputing with GPUs: Critical Decisions for Early Adopters
- Reflections on Shannon Information: In search of a natural information-entropy for images
- Analysing Astronomy Algorithms for GPUs and Beyond
- A new parameter space study of cosmological microlensing
- GERLUMPH Data Release 2: 2.5 billion simulated microlensing light curves
- Adventures in the microlensing cloud: large datasets, eResearch tools, and GPUs
- An Improved GPU-Based Ray-Shooting Code For Gravitational Microlensing
- Fast Multipole Method for Gravitational Lensing. Application to High Magnification Quasar Microlensing
- The effect of macromodel uncertainties on microlensing modelling of lensed quasars
- Fast simulations of extragalactic microlensing
- A GPU-Enabled, High-Resolution Cosmological Microlensing Parameter Survey
- Test of relativistic gravity using microlensing of relativistically broadened lines in gravitationally lensed quasars
- A Simple and Practical Algorithm for Accurate Gravitational Magnification Maps
- A GPU Code for Finding Microlensing Critical Curves and Caustics