GPU Acceleration of the DiFX Software Correlator

CI: – Dr. A. Deller

The Distributed FX (DiFX) software correlator is a widely adopted software package for the correlation of data from radio interferometers. In contrast to most radio astronomy correlators, it is general purpose and has been used by an enormous number of national and international facilities, including the Australian Long Baseline Array and special modes of the Australian SKA Pathfinder, the Very Long Baseline Array (USA), the Event Horizon Telescope (international), virtually all major geodetic Very Long Baseline Interferometry operations world-wide, and numerous other smaller facilities. While global in reach, the DiFX project was conceived, implemented, and led in Australia. In the last 15 years, DiFX data has contributed to many hundreds of scientific publications including 18 in Nature or Science, with highlights such as the first images of a black hole shadow.

Here, we propose to take the first steps towards an entirely new release of the DiFX code – one which incorporates GPU acceleration (“GPU-DIFX”). GPU technology is well developed for radio astronomy correlation but has never been adopted for a general-purpose correlator such as DiFX before. Many high-profile, near-term use cases for DiFX have large and expensive correlation requirements, including next-generation wideband geodetic VLBI and the wideband EHT observations capable of making a movie of the Galactic Center black hole Sgr A*. For these cases in particular, a more efficient DiFX will substantially reduce overall costs and allow science output to be obtained faster. The benefits of a more efficient DiFX, however, can be reaped by everyone in the 100+ strong DiFX users community – niche projects at small institutes would become possible on single workstations, continuing a DiFX tradition of lowering the bar to entry for what has traditionally been a specialist domain. Within the Australian context, GPU-DiFX would lead to lower-latency positions for Fast Radio Bursts detected by ASKAP, a capability that has already led to Science papers in the last year.

Specifically, the work proposed here will 1) build upon previous GPU correlation implementations to provide a library of benchmarked kernels suited to a general-purpose implementation in DiFX, 2) re-factor the existing DiFX code to facilitate an efficient transposition of these kernels into DiFX, and 3) complete the GPU-DiFX implementation. In recognition of the fact that this is a large proposal, we have provided (with the assistance of the ADACS staff) a breakdown into these smaller work packages to provide the TAC with added flexibility in the event of resource constraints.

Minimal computational resources are required for this project – standard use of OzSTAR will suffice, as detailed in the technical description.