$\texttt{cunuSHT}$: GPU Accelerated Spherical Harmonic Transforms on Arbitrary Pixelizations

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Belkner, Sebastian, Duivenvoorden, Adriaan J., Carron, Julien, Schaeffer, Nathanael, Reinecke, Martin
Natura: Preprint
Pubblicazione: 2024
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866914843344240640
author Belkner, Sebastian
Duivenvoorden, Adriaan J.
Carron, Julien
Schaeffer, Nathanael
Reinecke, Martin
author_facet Belkner, Sebastian
Duivenvoorden, Adriaan J.
Carron, Julien
Schaeffer, Nathanael
Reinecke, Martin
contents We present $\texttt{cunusht}$, a general-purpose Python package that wraps a highly efficient CUDA implementation of the nonuniform spin-$0$ spherical harmonic transform. The method is applicable to arbitrary pixelization schemes, including schemes constructed from equally-spaced iso-latitude rings as well as completely nonuniform ones. The algorithm has an asymptotic scaling of $\mathrm{O}{(\ell_{\rm max}^3)}$ for maximum multipole $\ell_{\rm max}$ and achieves machine precision accuracy. While $\texttt{cunusht}$ is developed for applications in cosmology in mind, it is applicable to various other interpolation problems on the sphere. We outperform the fastest available CPU algorithm by a factor of up to 5 for problems with a nonuniform pixelization and $\ell_{\rm max}>4\cdot10^3$ when comparing a single modern GPU to a modern 32-core CPU. This performance is achieved by utilizing the double Fourier sphere method in combination with the nonuniform fast Fourier transform and by avoiding transfers between the host and device. For scenarios without GPU availability, $\texttt{cunusht}$ wraps existing CPU libraries. $\texttt{cunusht}$ is publicly available and includes tests, documentation, and demonstrations.
format Preprint
id arxiv_https___arxiv_org_abs_2406_14542
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle $\texttt{cunuSHT}$: GPU Accelerated Spherical Harmonic Transforms on Arbitrary Pixelizations
Belkner, Sebastian
Duivenvoorden, Adriaan J.
Carron, Julien
Schaeffer, Nathanael
Reinecke, Martin
Instrumentation and Methods for Astrophysics
Cosmology and Nongalactic Astrophysics
We present $\texttt{cunusht}$, a general-purpose Python package that wraps a highly efficient CUDA implementation of the nonuniform spin-$0$ spherical harmonic transform. The method is applicable to arbitrary pixelization schemes, including schemes constructed from equally-spaced iso-latitude rings as well as completely nonuniform ones. The algorithm has an asymptotic scaling of $\mathrm{O}{(\ell_{\rm max}^3)}$ for maximum multipole $\ell_{\rm max}$ and achieves machine precision accuracy. While $\texttt{cunusht}$ is developed for applications in cosmology in mind, it is applicable to various other interpolation problems on the sphere. We outperform the fastest available CPU algorithm by a factor of up to 5 for problems with a nonuniform pixelization and $\ell_{\rm max}>4\cdot10^3$ when comparing a single modern GPU to a modern 32-core CPU. This performance is achieved by utilizing the double Fourier sphere method in combination with the nonuniform fast Fourier transform and by avoiding transfers between the host and device. For scenarios without GPU availability, $\texttt{cunusht}$ wraps existing CPU libraries. $\texttt{cunusht}$ is publicly available and includes tests, documentation, and demonstrations.
title $\texttt{cunuSHT}$: GPU Accelerated Spherical Harmonic Transforms on Arbitrary Pixelizations
topic Instrumentation and Methods for Astrophysics
Cosmology and Nongalactic Astrophysics
url https://arxiv.org/abs/2406.14542