From 58f5f45566b827e74ff623398bdf6d0b6fcebdb3 Mon Sep 17 00:00:00 2001
From: Rickard Green
Date: Fri, 18 Nov 2011 12:46:43 +0100
Subject: Use unbound schedulers as default
As of ERTS version 5.9 (OTP-R15B) the runtime system will by default
not bind schedulers to logical processors.
If the Erlang runtime system is the only operating system process that
binds threads to logical processors, this improves the performance of
the runtime system. However, if other operating system processes (as
for example another Erlang runtime system) also bind threads to logical
processors, there might be a performance penalty instead. In some cases
this performance penalty might be severe. Due to this, we change the
default so that the user must make an active decision in order to bind
schedulers.
---
erts/doc/src/erlang.xml | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
(limited to 'erts/doc/src/erlang.xml')
diff --git a/erts/doc/src/erlang.xml b/erts/doc/src/erlang.xml
index aef31f5b98..ae6300a728 100644
--- a/erts/doc/src/erlang.xml
+++ b/erts/doc/src/erlang.xml
@@ -5173,21 +5173,17 @@ true
For more information on how to define the CPU topology, see
erlang:system_flag(cpu_topology, CpuTopology).
- The runtime system will by default bind schedulers to logical
- processors using the default_bind bind type if the amount
- of schedulers are at least equal to the amount of logical
- processors configured, binding of schedulers is supported,
- and a CPU topology is available at startup.
+
The runtime system will by default not bind schedulers
+ to logical processors.
NOTE: If the Erlang runtime system is the only
operating system process that binds threads to logical processors,
this improves the performance of the runtime system. However,
if other operating system processes (as for example another Erlang
runtime system) also bind threads to logical processors, there
- might be a performance penalty instead. If this is the case you,
- are are advised to unbind the schedulers using the
- +sbtu command line argument,
- or erlang:system_flag(scheduler_bind_type, unbound).
+ might be a performance penalty instead. In some cases this
+ performance penalty might be severe. If this is the case, you
+ are advised to not bind the schedulers.
Schedulers can be bound in different ways. The How
argument determines how schedulers are bound. How can
currently be one of:
--
cgit v1.2.3