Skip to main content

MKL-based FFT transforms for NumPy arrays

Project description

mkl_fft -- a NumPy-based Python interface to Intel (R) MKL FFT functionality

Build Status

mkl_fft started as a part of Intel (R) Distribution for Python* optimizations to NumPy, and is now being released as a stand-alone package. It can be installed into conda environment using

   conda install -c intel mkl_fft

Since MKL FFT supports performing discrete Fourier transforms over non-contiguously laid out arrays, MKL can be directly used on any well-behaved floating point array with no internal overlaps for both in-place and not in-place transforms of arrays in single and double floating point precision.

This eliminates the need to copy input array contiguously into an intermediate buffer.

mkl_fft directly supports N-dimensional Fourier transforms.

More details can be found in SciPy 2017 conference proceedings: https://github.com/scipy-conference/scipy_proceedings/tree/2017/papers/oleksandr_pavlyk


It implements the following functions:

Complex transforms, similar to those in scipy.fftpack:

fft(x, n=None, axis=-1, overwrite_x=False)

ifft(x, n=None, axis=-1, overwrite_x=False)

fft2(x, shape=None, axes=(-2,-1), overwrite_x=False)

ifft2(x, shape=None, axes=(-2,-1), overwrite_x=False)

fftn(x, n=None, axes=None, overwrite_x=False)

ifftn(x, n=None, axes=None, overwrite_x=False)

Real transforms

rfft(x, n=None, axis=-1, overwrite_x=False) - real 1D Fourier transform, like scipy.fftpack.rfft

rfft_numpy(x, n=None, axis=-1) - real 1D Fourier transform, like numpy.fft.rfft

rfft2_numpy(x, s=None, axes=(-2,-1)) - real 2D Fourier transform, like numpy.fft.rfft2

rfftn_numpy(x, s=None, axes=None) - real 2D Fourier transform, like numpy.fft.rfftn

... and similar irfft* functions.

The package also provides mkl_fft._numpy_fft and mkl_fft._scipy_fft interfaces which provide drop-in replacements for equivalent functions in NumPy and SciPy respectively.


To build mkl_fft from sources on Linux:

  • install a recent version of MKL, if necessary;
  • execute source /path/to/mklroot/bin/mklvars.sh intel64 ;
  • execute pip install .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

mkl_fft-1.2.0-10-cp37-cp37m-win_amd64.whl (224.0 kB view details)

Uploaded CPython 3.7mWindows x86-64

mkl_fft-1.2.0-10-cp37-cp37m-manylinux2014_x86_64.whl (215.8 kB view details)

Uploaded CPython 3.7m

File details

Details for the file mkl_fft-1.2.0-10-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: mkl_fft-1.2.0-10-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 224.0 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.7.9

File hashes

Hashes for mkl_fft-1.2.0-10-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 a37752d2b0feff19ebc0a858d93cb39ae0ad52f0655082d33a71bc0382ce5328
MD5 9dc08d8d3a49cf219393e4c71088643c
BLAKE2b-256 d2808f6aeafe4b1d97ecf824f5b5b6986b401242444f5be4a490918ca2ebc162

See more details on using hashes here.

File details

Details for the file mkl_fft-1.2.0-10-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: mkl_fft-1.2.0-10-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 215.8 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/0.0.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.7.9

File hashes

Hashes for mkl_fft-1.2.0-10-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c292711437ef739dc0e04c4dcaf12298213a0945ba9a5d653acfcc5f58cb9eaf
MD5 245f0d6dabfed276a36a78411e04c855
BLAKE2b-256 e1defe883f978594e49075fe57161a4d0327687f57f47152ebe505fb8e6f276c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page