NFFT.jl: Generic and Fast Julia Implementation of the Nonequidistant Fast Fourier Transform
Tobias Knopp, Marija Boberg, Mirco Grosser

TL;DR
This paper presents NFFT.jl, a Julia implementation of the non-equidistant fast Fourier transform that is generic, efficient, and easier to read and maintain than existing C/C++ libraries, while maintaining high speed.
Contribution
The authors develop a fully generic, dimension-agnostic NFFT implementation in Julia that is faster and more concise than existing low-level language libraries.
Findings
Julia enables more concise code for NFFT implementations.
NFFT.jl achieves comparable or superior speed to C/C++ libraries.
The implementation is dimension-agnostic and highly generalizable.
Abstract
The non-equidistant fast Fourier transform (NFFT) is an extension of the famous fast Fourier transform (FFT), which can be applied to non-equidistantly sampled data in time/space or frequency domain. It is an approximative algorithm that allows to control the approximation error in such a way that machine precision is reached while keeping the algorithmic complexity in the same order as a regular FFT. The NFFT plays a major role in many signal processing applications and has been intensively studied from a theoretical and computational perspective. The fastest CPU implementations of the NFFT are implemented in the low-level programming languages C and C++ and require a compromise between code generalizability, code readability, and code efficiency. The programming language Julia promises new opportunities in optimizing these three conflicting goals. In this work we show that Julia…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsNumerical Methods and Algorithms · Digital Filter Design and Implementation · Optical Network Technologies
