1

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

  1. 对于固定数量的线程?
  2. 在不同运行中使用的不同数量的线程之间?

FFTW faq 说,该FFTW_ESTIMATE标志导致运行之间使用相同的算法,但它没有明确说明它在多线程情况下是确定性的。

4

1 回答 1

1

fftw 文档:

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

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

“如果您使用 --enable-debug 或 --enable-debug-malloc 标志配置了 FFTW(请参阅 Unix 上的安装),那么 fftw_execute 不是线程安全的。这些标志没有记录,因为它们仅用于开发和“

于 2013-11-25T16:42:22.783 回答