多线程FFTW是否确定

时间:2013-11-25 16:31:52

标签: multithreading fftw deterministic

我的程序运行之间的结果略有不同。它使用带有FFTW_ESTIMATE标志的多线程FFTW。多线程FFTW是否确定性:

  1. 对于固定数量的线程?
  2. 在不同运行中使用的不同线程数之间?
  3. FFTW faq说,FFTW_ESTIMATE标志导致运行之间使用相同的算法,但它没有明确说明它在多线程情况下是确定性的。

1 个答案:

答案 0 :(得分:1)

fftw文档:

http://www.fftw.org/fftw3_doc/Thread-safety.html#Thread-safety

规定只有fftw_execute是可重入的。如果没有关于您的使用情况的更多信息,很难说。也:

“如果使用--enable-debug或--enable-debug-malloc标志配置FFTW(请参阅Unix上的安装),则fftw_execute不是线程安全的。这些标志没有记录,因为它们仅用于用于开发和调试FFTW,但是如果必须使用--enable-debug,那么你还应该专门为fftw_execute传递--disable-debug-malloc以保证线程安全。“