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, s 2 hat. 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 s 2 hat 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 s 2 hat executed on one core, and by as much as 5.5 with respect to s 2 hat 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.
Keywords
- Spherical Harmonic Transform
- NVIDIA CUDA
- GPU
- Cosmic Microwave Background
Download conference paper PDF
References
Szydlarski, M., Esterie, P., Falcou, J., Grigori, L., Stompor, R.: Spherical harmonic transform on heterogeneous architectures using hybrid programming, INRIA, Rapport de recherche RR-7635 (April 2011), http://hal.inria.fr/inria-00597576/en/
Arfken, G.B., Weber, H.J.: Mathematical methods for physicists, 6th edn. Academic Press (2005)
Górski, K.M., et al.: HEALPix: A Framework for High-Resolution Discretization and Fast Analysis of Data Distributed on the Sphere. Astrophysical Journal 622, 759–771 (2005)
Reinecke, M.: Libpsht - algorithms for efficient spherical harmonic transforms. Astronomy and Astrophysics 526, A108+ (2011)
Driscoll, J.R., Healy, D.M.: Computing fourier transforms and convolutions on the 2-sphere. Advances in Applied Mathematics 15(2), 202–250 (1994)
Muciaccia, P.F., Natoli, P., Vittorio, N.: Fast Spherical Harmonic Analysis: A Quick Algorithm for Generating and/or Inverting Full-Sky, High-Resolution Cosmic Microwave Background Maps. Astrophysical Journal Letters 488, L63(1997)
Doroshkevich, A.G., et al.: First Release of Gauss-Legendre Sky Pixelization (GLESP) software package for CMB analysis. ArXiv Astrophysics e-prints (January 2005)
Tygert, M.: Fast algorithms for spherical harmonic expansions, ii. Journal of Computational Physics 227(8), 4260–4279 (2008)
Nukada, A., Matsuoka, S.: Auto-tuning 3-D FFT library for CUDA GPUs. In: SC 2009: Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis, pp. 1–10 (2009)
Volkov, V., Demmel, J.W.: Benchmarking GPUs to tune dense linear algebra. In: ACM/IEEE Conference on Supercomputing, SC 2008 (2008)
Nvidia, NVIDIA CUDA Programming Guide (2010)
Nvidia, NVIDIA CUDA Best Practices Guide (2010)
Nvidia, Tuning CUDA Applications for Fermi (2010)
Frigo, M., Johnson, S.: The design and implementation of FFTW3. Proceedings of the IEEE 93(2), 216–231 (2005)
Nvidia, CUDA CUFFT Library (2010)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hupca, I.O., Falcou, J., Grigori, L., Stompor, R. (2012). Spherical Harmonic Transform with GPUs. In: Alexander, M., et al. Euro-Par 2011: Parallel Processing Workshops. Euro-Par 2011. Lecture Notes in Computer Science, vol 7155. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29737-3_40
Download citation
DOI: https://doi.org/10.1007/978-3-642-29737-3_40
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-29736-6
Online ISBN: 978-3-642-29737-3
eBook Packages: Computer ScienceComputer Science (R0)
