Speeding Up the GUIBRUSH® retrieval code for modelling exoplanetary atmospheres
Abstract
Spectral retrieval is a fundamental tool for investigating the chemical composition and physical properties of exoplanetary atmospheres. These retrievals rely on reconstructing the path of photons from the host star through the exoplanet’s atmosphere, a task typically accomplished by solving the radiative transfer (RT) equations. This calculation constitutes one of the main computational bottlenecks of retrievals. Another significant bottleneck arises from the need to generate a very large number of models and compare them with observations in order to explore the parameter space within a Bayesian framework. In this work, we focused on improving both of these critical bottlenecks within our framework GUIBRUSH® (Graphic User Interface for Bayesian Retrieval Using High Resolution Spectroscopy). First, we optimised the efficiency of our Bayesian analysis tool, parallelising both forward-model computation and its comparison with observational data. This strategy yielded a performance improvement of approximately ∼ 10 × relative to the original implementation. Secondly, we accelerated the RT calculation. We first benchmarked the performance of two widely adopted Python-based packages, petitRADTRANS and PyratBay , on the hot Jupiter WASP-127b. We found that in the spectral band we investigated (namely, 0.95– 2 . 45 μ m in the near-infrared), PyratBay ran approximately twice as fast as petitRADTRANS on CPU, motivating its adoption as the baseline for further optimisation. We then implemented a GPU-accelerated version of PyratBay by parallelising the computation of the optical depth and transmission spectrum across the wavelength domain using PyCUDA , which provides a seamless interface between Python and NVIDIA’s CUDA framework. When computing 100 models, the GPU implementation of PyratBay achieved a median speed-up of approximately 3 . 4 × per model compared to the CPU version. To extend this gain to full retrievals, we integrated the GPU version with Python’s multiprocessing---pool , enabling large model grids to be evaluated in parallel. For our test case on WASP-127 b, the total runtime to compute 99123 models (corresponding to the number of iterations required for the retrieval to converge) was reduced from 173082.4 s to 10046.43 s. We are now working on integrating the GPU-accelerated PyratBay version directly into GUIBRUSH®, enabling fully GPU-powered atmospheric retrievals.
Fields of Study & Subjects
Stellar
planetary
and galactic studies
Astrophysics and Star Formation Studies
Astronomy and Astrophysical Research
Publication details
- Journal / source
- Astronomy and Computing
- Volume
- 55
- Pages
- 101055–101055
- Publication date
- 5 January 2026
- Language
- EN