<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <!-- This manual is for FFTW (version 3.3.10, 10 December 2020). Copyright (C) 2003 Matteo Frigo. Copyright (C) 2003 Massachusetts Institute of Technology. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions, except that this permission notice may be stated in a translation approved by the Free Software Foundation. --> <!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ --> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>How Many Threads to Use? (FFTW 3.3.10)</title> <meta name="description" content="How Many Threads to Use? (FFTW 3.3.10)"> <meta name="keywords" content="How Many Threads to Use? (FFTW 3.3.10)"> <meta name="resource-type" content="document"> <meta name="distribution" content="global"> <meta name="Generator" content="makeinfo"> <link href="index.html" rel="start" title="Top"> <link href="Concept-Index.html" rel="index" title="Concept Index"> <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> <link href="Multi_002dthreaded-FFTW.html" rel="up" title="Multi-threaded FFTW"> <link href="Thread-safety.html" rel="next" title="Thread safety"> <link href="Usage-of-Multi_002dthreaded-FFTW.html" rel="prev" title="Usage of Multi-threaded FFTW"> <style type="text/css"> <!-- a.summary-letter {text-decoration: none} blockquote.indentedblock {margin-right: 0em} div.display {margin-left: 3.2em} div.example {margin-left: 3.2em} div.lisp {margin-left: 3.2em} kbd {font-style: oblique} pre.display {font-family: inherit} pre.format {font-family: inherit} pre.menu-comment {font-family: serif} pre.menu-preformatted {font-family: serif} span.nolinebreak {white-space: nowrap} span.roman {font-family: initial; font-weight: normal} span.sansserif {font-family: sans-serif; font-weight: normal} ul.no-bullet {list-style: none} --> </style> </head> <body lang="en"> <span id="How-Many-Threads-to-Use_003f"></span><div class="header"> <p> Next: <a href="Thread-safety.html" accesskey="n" rel="next">Thread safety</a>, Previous: <a href="Usage-of-Multi_002dthreaded-FFTW.html" accesskey="p" rel="prev">Usage of Multi-threaded FFTW</a>, Up: <a href="Multi_002dthreaded-FFTW.html" accesskey="u" rel="up">Multi-threaded FFTW</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html" title="Index" rel="index">Index</a>]</p> </div> <hr> <span id="How-Many-Threads-to-Use_003f-1"></span><h3 class="section">5.3 How Many Threads to Use?</h3> <span id="index-number-of-threads"></span> <p>There is a fair amount of overhead involved in synchronizing threads, so the optimal number of threads to use depends upon the size of the transform as well as on the number of processors you have. </p> <p>As a general rule, you don’t want to use more threads than you have processors. (Using more threads will work, but there will be extra overhead with no benefit.) In fact, if the problem size is too small, you may want to use fewer threads than you have processors. </p> <p>You will have to experiment with your system to see what level of parallelization is best for your problem size. Typically, the problem will have to involve at least a few thousand data points before threads become beneficial. If you plan with <code>FFTW_PATIENT</code>, it will automatically disable threads for sizes that don’t benefit from parallelization. <span id="index-FFTW_005fPATIENT-3"></span> </p> </body> </html>