FFTmtX
This is an extension of the original FFTmt to perform single-precision fft as well as double-precision.
These mex-files perform vectorized FFT on multiple threads by breaking down the FFT of a large matrix into smaller parts. Each part can be performed in parallel, on a different core, for speed:
About 3x faster on a quad-core machine. Single precision is about 2x faster than double, so you can increase FFT speed up to 6x.
Also added: Drop-in replacements for fft.m and ifft.m that automatically choose between the builtin and multithreaded FFT depending on which will be fastest for a given matrix size. If you use these replacement mfiles, any code that calls FFT will benefit from multithreaded FFT. You won't have to change any other code to see the speed benefits.
Includes pre-built mexfiles for intel OS X, but source is included to easily build for other platforms. Also includes a variety of other support for building and debugging on OS X.
Based on the original FFTmt of Jerome Genest and Simon Potvin (jgenest@gel.ulaval.ca)
Cite As
John Iversen (2024). FFTmtX (https://www.mathworks.com/matlabcentral/fileexchange/16314-fftmtx), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Acknowledgements
Inspired by: FFTmt
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
FFTmtX_distribution_1.0_license_resubmit/Matlab/
FFTmtX_distribution_1.0_license_resubmit/Matlab/@double/
FFTmtX_distribution_1.0_license_resubmit/Matlab/@single/
FFTmtX_distribution_1.0_license_resubmit/performance tests/
Version | Published | Release Notes | |
---|---|---|---|
1.2.0.0 | Updated license information, omit fftw libraries, which are GNU |