当使用 scipy_fftpack 的直接 fft 替换时,智慧是否存储在全球范围内?

When using the drop-in fft replacements for scipy_fftpack, is the wisdom stored globally?

当使用 FFTW 中的下降替换 scipy_fftpack 时,它是否会为每个 FFT 大小计算一次智慧,然后再也不会计算智慧?

我有一个重复调用的循环

freqImg = np.fft.fftshift(pyfftw.interfaces.scipy_fftpack.fft2(slc, threads=1, planner_effort='FFTW_PATIENT'))   

由于我无法深入的原因,我无法批量进行 FFT。但是,智慧是在循环的每次迭代中重新计算,还是规划器缓存智慧并在循环的每次迭代中使用它?

是的,先前计算的智慧用于循环的后续迭代,但一旦过程结束就会被遗忘(除非明确存储和重新加载)。 interfaces API 还可以缓存 FFTW 对象并在可能和需要的情况下重用它。我建议为此寻找 docs