-
-
Notifications
You must be signed in to change notification settings - Fork 10.9k
numpy.fft doesn't works. #8639
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
1030703 is a prime number, which is probably the reason. Some other fft implementations are probably faster with that, but there is also the typical method of padding the array with zeros to avoid these inefficient FFT cases. |
I ran into this today; an array of length 1000000 has almost instant fft calculation, 986656 (=32112803) takes a few seconds, and 986626 (=2*493313) takes longer than I have patience for.
The content doesn't seem to matter; I can use np.fft.fft(np.arange(986626))
and it will hang.
What does padding do to the FFT results?
Is there any way to accomplish an equivalent fft to what I want, but faster, by specifying some parameter to np.fft.fft
?
hmm... looks like a duplicate of #1104 |
Should be fixed when 1.17 is release next year. |
Is that going to be Python 3.0 only? or 2.7 also? |
8000
Python 3. It can probably be compiled for Python 2.7 as long as you avoid Windows, it needs Python compiled with a C99 compliant compiler. |
Anaconda may be using the MKL fft for their distro, I don't know if it works with large prime sizes. |
You can also install |
A, but yes, padding should be a pretty good solution. I am not quite sure how much padding changes things, but it is a pretty standard method. |
Solved for a long time with the new pocketfft supporting bluestein's algorithm |
Uh oh!
There was an error while loading. Please reload this page.
I'm using numpy 1.12.0 version.
I've interrupted cause np.fft.fft(a) doesn't return while 1hours.
Data I used
http://home.wisewolf.org/static/a.npy
The text was updated successfully, but these errors were encountered: