gpuNUFFT: an Open-Source GPU Library for 3D Gridding with Direct MATLAB Interface

Up to 40x acceleration for multi-coil gridding of arbitrary-shaped k-space data.

We are sharing a fast three-dimensional non-uniform fast Fourier transform (NUFFT) CUDA implementation with MATLAB mex interface and class-based generation of forward and adjoint operators. The library can be integrated with any MATLAB-based image reconstruction and will perform the NUFFTs on the GPU without additional code modifications.

Related Publication

Knoll F, Schwarzl A, Diwoky C, Sodickson DK.
gpuNUFFT – An Open Source GPU Library for 3D Regridding with Direct Matlab Interface
Proc Intl Soc Magn Reson Med. 22 (2014). p 4297.

Please cite this work if you are using gpuNUFFT in your research.

Version History

VersionRelease dateNotes
2016-05The library is now maintained on Github.
In addition, gpuNUFFT is featured on the ISMRM MR-Hub, along with additional installation instructions, video tutorials, and an ISMRM review of the library.
2015-08Compute capabilities 1.x are no longer supported in CUDA 7.0. To use gpuNUFFT with CUDA 7.0, the CMakeLists file has to be adjusted by modifying the flags
SET(CUDA_NVCC_FLAGS "-arch;sm_1x;--ptxas-options=-v").
We will adress this issue more thoroughly in future releases.
2.0.62014-09-15A major update:
All precomputations are done on the GPU;
Full support for multi coil data;
Support for arbitrary sector widths;
Effective support for anisotropic grid sizes.
1.12014-05-28Demo example now allows the use of atomic operations for increased speedup.
1.02014-05-05First resease of gpuNUFFT.


  • Andreas Schwarzl (Graz University of Technology)
  • Florian Knoll (NYU Grossman School of Medicine)


Questions about this resource may be directed to Florian Knoll, PhD.