cannam@167: cannam@167: cannam@167: cannam@167: cannam@167:
cannam@167:cannam@167: Next: Thread safety, Previous: Usage of Multi-threaded FFTW, Up: Multi-threaded FFTW [Contents][Index]
cannam@167:There is a fair amount of overhead involved in synchronizing threads, cannam@167: so the optimal number of threads to use depends upon the size of the cannam@167: transform as well as on the number of processors you have. cannam@167:
cannam@167:As a general rule, you don’t want to use more threads than you have cannam@167: processors. (Using more threads will work, but there will be extra cannam@167: overhead with no benefit.) In fact, if the problem size is too small, cannam@167: you may want to use fewer threads than you have processors. cannam@167:
cannam@167:You will have to experiment with your system to see what level of
cannam@167: parallelization is best for your problem size. Typically, the problem
cannam@167: will have to involve at least a few thousand data points before threads
cannam@167: become beneficial. If you plan with FFTW_PATIENT
, it will
cannam@167: automatically disable threads for sizes that don’t benefit from
cannam@167: parallelization.
cannam@167:
cannam@167: