Auto-tuning dedispersion for many-core accelerators

Authors
Publication date 2014
Book title IEEE 28th International Parallel & Distributed Processing Symposium
Book subtitle proceedings : 19-23 May 2014, Phoenix, Arizona
ISBN
  • 9781479937998
ISBN (electronic)
  • 9781479938001
  • 9780769552071
  • 9781479938018
Event 28th IEEE International Parallel and Distributed Processing Symposium, IPDPS 2014
Pages (from-to) 952-961
Number of pages 10
Publisher Los Alamitos, Calif.: IEEE Computer Society
Organisations
  • Faculty of Science (FNWI) - Anton Pannekoek Institute for Astronomy (API)
Abstract

Dedispersion is a basic algorithm to reconstruct impulsive astrophysical signals. It is used in high sampling-rate radio astronomy to counteract temporal smearing by intervening interstellar medium. To counteract this smearing, the received signal train must be dedispersed for thousands of trial distances, after which the transformed signals are further analyzed. This process is expensive on both computing and data handling. This challenge is exacerbated in future, and even some current, radio telescopes which routinely produce hundreds of such data streams in parallel. There, the compute requirements for dedispersion are high (petascale), while the data intensity is extreme. Yet, the dedispersion algorithm remains a basic component of every radio telescope, and a fundamental step in searching the sky for radio pulsars and other transient astrophysical objects. In this paper, we study the parallelization of the dedispersion algorithm on many-core accelerators, including GPUs from AMD and NVIDIA, and the Intel Xeon Phi. An important contribution is the computational analysis of the algorithm, from which we conclude that dedispersion is inherently memory-bound in any realistic scenario, in contrast to earlier reports. We also provide empirical proof that, even in unrealistic scenarios, hardware limitations keep the arithmetic intensity low, thus limiting performance. We exploit auto-tuning to adapt the algorithm, not only to different accelerators, but also to different observations, and even telescopes. Our experiments show how the algorithm is tuned automatically for different scenarios and how it exploits and highlights the underlying specificities of the hardware: in some observations, the tuner automatically optimizes device occupancy, while in others it optimizes memory bandwidth. We quantitatively analyze the problem space, and by comparing the results of optimal auto-tuned versions against the best performing fixed codes, we show the impact that auto-tuning has on performance, and conclude that it is statistically relevant.

Document type Conference contribution
Language English
Published at https://doi.org/10.1109/IPDPS.2014.101
Other links https://www.scopus.com/pages/publications/84906706611
Permalink to this page
Back