MKL-based FFT transforms for NumPy arrays
Project description
mkl_fft
-- a NumPy-based Python interface to Intel (R) MKL FFT functionality
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
To install mkl_fft Pypi package please use following command:
python -m pip install --index-url https://pypi.anaconda.org/intel/simple --extra-index-url https://pypi.org/simple mkl_fft
If command above installs NumPy package from the Pypi, please use following command to install Intel optimized NumPy wheel package from Anaconda Cloud:
python -m pip install --index-url https://pypi.anaconda.org/intel/simple --extra-index-url https://pypi.org/simple mkl_fft numpy==<numpy_version>
Where <numpy_version>
should be the latest version from https://anaconda.org/intel/numpy
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
Built Distributions
Hashes for mkl_fft-1.3.8-72-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f3d3dedcab42eb421418e0902f1fd73fd6214adabb42a6db796b57c5afa724d7 |
|
MD5 | 817d272ab8abf73e4bff3735f9487de6 |
|
BLAKE2b-256 | 04921d8c699f92565d2899a0dbc21a55124e5ade5fcdda3e08ca101a5ad1be36 |
Hashes for mkl_fft-1.3.8-72-cp311-cp311-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f67bcab591c1d09dcf7531a4aa0281039999770b01d2042b43dce434509a02b |
|
MD5 | d2c5c0ce7816be3c79a261172de2c970 |
|
BLAKE2b-256 | 4a4848d90c7cdad75d8205e54e233a382ecf2af2700b6ef7cad8bf25f85b253b |
Hashes for mkl_fft-1.3.8-72-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95cb218f6e9ca42ae7a9a83331bbb617ad904cbdf11c454c936df775a1b4a03d |
|
MD5 | c0a37d3e2006ea69c6e855819953c010 |
|
BLAKE2b-256 | b3d22c6a7951ac64d9baebaf01c0f6d2a1a52834fd4416222f4ebf8826052d98 |
Hashes for mkl_fft-1.3.8-72-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71a212965c3c8a8c45b3bf819cfb1248fc9bc62c8c99ebdf541c1d619cd57073 |
|
MD5 | 41cdfd29ae76c0502a09422fb25f3373 |
|
BLAKE2b-256 | d566dcdbd07cbef805a4a74258073e0025ebb0af79f981d61746cac3ed35ca7f |
Hashes for mkl_fft-1.3.8-72-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08c55b97086ac3c3f24ed31c2e86d2cf4da585f96f1a174c4f33e9ad0a641fbb |
|
MD5 | e3ead3c27b663a2ba762ce8d3fe87e62 |
|
BLAKE2b-256 | f6040a017248a29ed151611dcded87f03f45a6c9aaa8c37dc7b618440464fe53 |
Hashes for mkl_fft-1.3.8-72-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 471b4f5cfc1496029064a4721ffbfb4bccf85d0bc80e1086979672f2d4160d5b |
|
MD5 | 6b64d4460951d7aa23d04047fbd65e7c |
|
BLAKE2b-256 | b0a0fe2c2cd08e52a7f57853295c35c23f07790ff2c5277a9fc04b1eb7d25d60 |
Hashes for mkl_fft-1.3.8-70-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32260b4f802fc5185ead67a032e844809638cfd44c1b4b76e908cd74d2f84926 |
|
MD5 | d027632bbb543238de8b87ef8ff760f5 |
|
BLAKE2b-256 | e839caa373695ed95a9f78e99f53c4a4fbff86784f56161b0a4b0abc93e31b79 |
Hashes for mkl_fft-1.3.8-70-cp310-cp310-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1640b75a5d47bb99c944815f0e349e9f27d9a107ae1c83a4ea3a7726f118a085 |
|
MD5 | dbe3b53d6da1e90044d7247fba11c5c7 |
|
BLAKE2b-256 | f5206eef8c59d63043da6a8339be7afb60f9b9ead43470efe28e29b38ff9e38b |
Hashes for mkl_fft-1.3.8-70-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 01bc0c9df42c18d8e25f633497b9ecf81088d8dadd39c7917fe105d3e219c124 |
|
MD5 | 0985d53e8405364c1147804bd188baa2 |
|
BLAKE2b-256 | 6e7123a25b0bddef29eb84a7e948d1092618894e4211ef937f61f4a7444153f2 |
Hashes for mkl_fft-1.3.8-70-cp39-cp39-manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b77d42a808d7e789eae0f5a5436c37e7979c24ffe83a559c8c62c591d00b7a5 |
|
MD5 | e40fd148ed2b7982fa1b67d7b172cec2 |
|
BLAKE2b-256 | e184d5da4cbaea6e9961ac81e84e769213e84af105d5c5a04061c232ee0d577b |