This paper presents an implementation of radio astronomy imaging algorithms on modern High Performance Computing (HPC) infrastructures, exploiting distributed memory parallelism and acceleration throughout multiple GPUs. Our code, called RICK (Radio Imaging Code Kernels), is capable of performing the major steps of the w-stacking algorithm presented in Offringa et al. (2014) both inter- and intra-node, and in particular has the possibility to run entirely on the GPU memory, minimising the number of data transfers between CPU and GPU. This feature, especially among multiple GPUs, is critical given the huge sizes of radio datasets involved.After a detailed description of the new implementations of the code with respect to the first version presented in Gheller et al. (2023), we analyse the performances of the code for each step involved in its execution. We also discuss the pros and cons related to an accelerated approach to this problem and its impact on the overall behaviour of the code. Such approach to the problem results in a significant improvement in terms of runtime with respect to the CPU version of the code, as long as the amount of computational resources does not exceed the one requested by the size of the problem: the code, in fact, is now limited by the communication costs, with the computation that gets heavily reduced by the capabilities of the accelerators.
Read full abstract