Browse Source

document --enable-blocking-drivers

Samuel Thibault 7 years ago
parent
commit
3ad24db189
2 changed files with 24 additions and 0 deletions
  1. 12 0
      doc/doxygen/chapters/390_faq.doxy
  2. 12 0
      doc/doxygen/chapters/510_configure_options.doxy

+ 12 - 0
doc/doxygen/chapters/390_faq.doxy

@@ -195,6 +195,18 @@ security.models.extensions.user_set_cpu_affinity=1
 \endverbatim
 
 
+\section StarPUEatsCPUs StarPU permanently eats 100% of all CPUs
+
+Yes, this is on purpose.
+
+By default, StarPU uses active polling on task queues, so as to minimize wake-up
+latency for better overall performance.
+
+If eating CPU time is a problem (e.g. application running on a desktop),
+pass option \ref enable-blocking-drivers "--enable-blocking-drivers" to
+<c>./configure</c>. This will add some overhead when putting CPU workers to
+sleep or waking them, but avoid eating 100% CPU permanently.
+
 \section PauseResume Interleaving StarPU and non-StarPU code
 
 If your application only partially uses StarPU, and you do not want to

+ 12 - 0
doc/doxygen/chapters/510_configure_options.doxy

@@ -122,6 +122,18 @@ used by nvcc.
 
 <dl>
 
+<dt>--enable-blocking-drivers</dt>
+<dd>
+\anchor enable-blocking-drivers
+\addindex __configure__--enable-blocking-drivers
+By default, StarPU keeps CPU workers awake permanently, for better
+reactivity. This option makes StarPU put CPU workers to real sleep when there
+are not enough tasks to compute.
+
+Use at most <c>count</c> CPU cores.  This information is then
+available as the macro ::STARPU_MAXCPUS.
+</dd>
+
 <dt>--enable-maxcpus=<c>count</c></dt>
 <dd>
 \anchor enable-maxcpus