Spherical harmonic transform with GPUs

  • Authors:
  • Ioan Ovidiu Hupca;Joel Falcou;Laura Grigori;Radek Stompor

  • Affiliations:
  • LRI - INRIA Saclay-Ile de, France and Université Paris-Sud 11, Orsay, France;LRI - INRIA Saclay-Ile de, France and Université Paris-Sud 11, Orsay, France;LRI - INRIA Saclay-Ile de, France and Université Paris-Sud 11, Orsay, France;Astroparticule et Cosmologie, CNRS, Université Paris Diderot, Paris, France

  • Venue:
  • Euro-Par'11 Proceedings of the 2011 international conference on Parallel Processing
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

We describe an algorithm for computing an inverse spherical harmonic transform suitable for graphic processing units (GPU). We use CUDA and base our implementation on a Fortran90 routine included in a publicly available parallel package, s2hat. We focus our attention on two major sequential steps involved in the transforms computation retaining the efficient parallel framework of the original code. We detail optimization techniques used to enhance the performance of the CUDA-based code and contrast them with those implemented in the Fortran90 version. We present performance comparisons of a single CPU plus GPU unit with the s2hat code running on either a single or 4 processors. In particular, we find that the latest generation of GPUs, such as NVIDIA GF100 (Fermi), can accelerate the spherical harmonic transforms by as much as 18 times with respect to s2hat executed on one core, and by as much as 5.5 with respect to s2hat on 4 cores, with the overall performance being limited by the Fast Fourier transforms. The work presented here has been performed in the context of the Cosmic Microwave Background simulations and analysis. However, we expect that the developed software will be of more general interest and applicability.