clFFT is a software library containing Fast Fourier Transform (FFT) functions written in OpenCL™. In addition to GPU devices, the library also supports running on CPU to facilitate debugging and heterogeneous programming.

clFFT provides a set of FFT routines that are optimized for AMD graphics processors, but also are functional across CPU and other compute devices. The library is open source and available on GitHub. The library:

  • Provides a fast and accurate platform for calculating discrete FFTs.
  • Works on CPU or GPU backends.
  • Supports in-place or out-of-place transforms.
  • Supports 1D, 2D, and 3D transforms with a batch size that can be greater than 1.
  • Supports planar (real and complex components in separate arrays) and interleaved (real and complex components as a pair contiguous in memory) formats.
  • Supports dimension lengths that can be any combination of powers of 2, 3, 5, and 7.
  • Supports single and double precision floating point formats.

For documentation, examples, build instructions, and more information, please go to the project page on GitHub.