cuFINUFFT: a load-balanced GPU library for general-purpose nonuniform FFTsShow others and affiliations
2021 (English)In: 2021 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), Institute of Electrical and Electronics Engineers (IEEE) , 2021, p. 688-697Conference paper, Published paper (Refereed)
Abstract [en]
Nonuniform fast Fourier transforms dominate the computational cost in many applications including image reconstruction and signal processing. We thus present a general-purpose GPU-based CUDA library for type 1 (nonuniform to uniform) and type 2 (uniform to nonuniform) transforms in dimensions 2 and 3, in single or double precision. It achieves high performance for a given user-requested accuracy, regardless of the distribution of nonuniform points, via cache-aware point reordering, and load-balanced blocked spreading in shared memory. At low accuracies, this gives on-GPU throughputs around 109 nonuniform points per second, and (even including hostdevice transfer) is typically 4-10x faster than the latest parallel CPU code FINUFFT (at 28 threads). It is competitive with two established GPU codes, being up to 90x faster at high accuracy and/or type 1 clustered point distributions. Finally we demonstrate a 5-12x speedup versus CPU in an X-ray diffraction 3D iterative reconstruction task at 10(-12) accuracy, observing excellent multi-GPU weak scaling up to one rank per GPU.
Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers (IEEE) , 2021. p. 688-697
Keywords [en]
Nonuniform FFT, GPU, load balancing
National Category
Signal Processing
Identifiers
URN: urn:nbn:se:kth:diva-302675DOI: 10.1109/IPDPSW52791.2021.00105ISI: 000689576200084Scopus ID: 2-s2.0-85114440464OAI: oai:DiVA.org:kth-302675DiVA, id: diva2:1599130
Conference
35th IEEE International Parallel and Distributed Processing Symposium (IPDPS), JUN 17-21, 2021, Portland, OR
Note
QC 20210930
2021-09-302021-09-302022-06-25Bibliographically approved