我应该去哪个方向比np.fft更快

Cor*_*one 4 optimization numpy fft cython python-2.7

我有一些代码,大量使用np.fft.rfftnp.fft.irfft,这样,这是优化的瓶颈.

有没有机会比这更快,如果是这样,我最好的选择是什么.我想到的想法是:

  • Cython - 听说这个很快; 但是这会有帮助吗?
  • 挖掘numpy - rfft调用_raw_fft大量检查然后调用fftpack.cfftf.Profiler告诉我只有80%的时间都fftpack.cfftf在进行中,将包装剥离到我需要的唯一位可节省一点时间.
  • 在哪里找到更快的DFT算法?
  • 买更多的电脑

所以问题真的归结为:

  1. 有Cython经验的人是否知道在这里尝试是否值得 - 或者它不能更快​​地使numpy.
  2. 那里有更快的套餐吗?可能多快?

Cor*_*one 6

我发现这个问题/答案实际上回答了部分内容:

/sf/answers/593734151/

显示scipy中还有另一个FFT实现速度要快得多,而且还有一个名为FFTW的程序包速度更快(查看这些基准测试的速度最高可达3倍).

所以这就留下了Cython是否能让它更快的问题.