aboutsummaryrefslogtreecommitdiffstats
path: root/erts/doc
diff options
context:
space:
mode:
authorLukas Larsson <[email protected]>2017-10-05 12:00:27 +0200
committerLukas Larsson <[email protected]>2017-10-05 12:00:27 +0200
commit558f152750f87f192deb9492a0c21699eee30020 (patch)
tree2a2431d5013bde540eb48721f0501cadf365036b /erts/doc
parentf7476ef04d6cad95a54aff3aae734c25a283e3fd (diff)
parent6543f15a3b6d9c1f71ff30ea682d64d1c8c7a7dc (diff)
downloadotp-558f152750f87f192deb9492a0c21699eee30020.tar.gz
otp-558f152750f87f192deb9492a0c21699eee30020.tar.bz2
otp-558f152750f87f192deb9492a0c21699eee30020.zip
Merge branch 'lukas/erts/poll-thread/OTP-14346'
* lukas/erts/poll-thread/OTP-14346: erts: Update +IOt and msacc docs
Diffstat (limited to 'erts/doc')
-rw-r--r--erts/doc/src/erl.xml6
-rw-r--r--erts/doc/src/erlang.xml15
2 files changed, 16 insertions, 5 deletions
diff --git a/erts/doc/src/erl.xml b/erts/doc/src/erl.xml
index dc58cdeb13..6f6eca2a0b 100644
--- a/erts/doc/src/erl.xml
+++ b/erts/doc/src/erl.xml
@@ -776,6 +776,10 @@
<p>Sets the number of IO poll threads to use when polling for I/O.
The maximum number of poll threads allowed is 1024. The default is 1.
</p>
+ <p>A good way to check if more IO poll threads are needed is to use
+ <seealso marker="runtime_tools:msacc">microstate accounting</seealso>
+ and see what the load of the IO poll thread is. If it is high it could
+ be a good idea to add more threads.</p>
</item>
<tag><marker id="+IOPp"/><c>+IOPp PollSetsPercentage</c></tag>
<item>
@@ -789,7 +793,7 @@
<item>
<p>Similar to <seealso marker="#+IOt"><c>+IOt</c></seealso> but uses
percentages to set the number of IO poll threads to create, based on
- the number of schedulers configures. If both <c>+IOPt</c> and
+ the number of schedulers configured. If both <c>+IOPt</c> and
<c>+IOt</c> are used, <c>+IOPt</c> is ignored.
</p>
</item>
diff --git a/erts/doc/src/erlang.xml b/erts/doc/src/erlang.xml
index 06f568c832..8dbebe880d 100644
--- a/erts/doc/src/erlang.xml
+++ b/erts/doc/src/erlang.xml
@@ -6475,17 +6475,24 @@ lists:map(
<p><c><anno>MSAcc_Thread_Type</anno></c>s:</p>
<taglist>
<tag><c>scheduler</c></tag>
- <item>The main execution threads that do most of the work.</item>
+ <item>The main execution threads that do most of the work. See
+ <seealso marker="erts:erl#+S">erl +S</seealso> for more details.</item>
<tag><c>dirty_cpu_scheduler</c></tag>
- <item>The threads for long running cpu intensive work.</item>
+ <item>The threads for long running cpu intensive work. See
+ <seealso marker="erts:erl#+SDcpu">erl +SDcpu</seealso> for more details.</item>
<tag><c>dirty_io_scheduler</c></tag>
- <item>The threads for long running I/O work.</item>
+ <item>The threads for long running I/O work. See
+ <seealso marker="erts:erl#+SDio">erl +SDio</seealso> for more details.</item>
<tag><c>async</c></tag>
<item>Async threads are used by various linked-in drivers (mainly the
- file drivers) do offload non-CPU intensive work.</item>
+ file drivers) do offload non-CPU intensive work. See
+ <seealso marker="erts:erl#+async_thread_pool_size">erl +A</seealso> for more details.</item>
<tag><c>aux</c></tag>
<item>Takes care of any work that is not
specifically assigned to a scheduler.</item>
+ <tag><c>poll</c></tag>
+ <item>Does the IO polling for the emulator. See
+ <seealso marker="erts:erl#+IOt">erl +IOt</seealso> for more details.</item>
</taglist>
<p>The following <c><anno>MSAcc_Thread_State</anno></c>s are available.
All states are exclusive, meaning that a thread cannot be in two