diff options
author | Sverker Eriksson <sverker@erlang.org> | 2021-04-29 23:09:41 +0200 |
---|---|---|
committer | Sverker Eriksson <sverker@erlang.org> | 2021-04-29 23:09:41 +0200 |
commit | 58f50cc74d59e6f8513950a2d42e79fe37275c26 (patch) | |
tree | d4007aacc7ae1c3584cfa95d47b09b81eaf99cd1 /system | |
parent | 460dc0daa7e57951af06c71af263d35236e2c3a3 (diff) | |
download | erlang-58f50cc74d59e6f8513950a2d42e79fe37275c26.tar.gz |
Remove talk about SMP vs non-SMP emulator.
Diffstat (limited to 'system')
-rw-r--r-- | system/doc/efficiency_guide/commoncaveats.xml | 3 | ||||
-rw-r--r-- | system/doc/efficiency_guide/processes.xml | 20 |
2 files changed, 8 insertions, 15 deletions
diff --git a/system/doc/efficiency_guide/commoncaveats.xml b/system/doc/efficiency_guide/commoncaveats.xml index 35dd23aa9b..a0ed5f5b0d 100644 --- a/system/doc/efficiency_guide/commoncaveats.xml +++ b/system/doc/efficiency_guide/commoncaveats.xml @@ -43,8 +43,7 @@ <seeerl marker="stdlib:timer">timer</seeerl> module in STDLIB. The <c>timer</c> module uses a separate process to manage the timers. That process can easily become overloaded if many processes - create and cancel timers frequently (especially when using the - SMP emulator).</p> + create and cancel timers frequently.</p> <p>The functions in the <c>timer</c> module that do not manage timers (such as <c>timer:tc/3</c> or <c>timer:sleep/1</c>), do not call the diff --git a/system/doc/efficiency_guide/processes.xml b/system/doc/efficiency_guide/processes.xml index 033e7f109e..cef50c19ea 100644 --- a/system/doc/efficiency_guide/processes.xml +++ b/system/doc/efficiency_guide/processes.xml @@ -36,13 +36,11 @@ <p>An Erlang process is lightweight compared to threads and processes in operating systems.</p> - <p>A newly spawned Erlang process uses 309 words of memory - in the non-SMP emulator without HiPE support. (SMP support - and HiPE support both add to this size.) The size can + <p>A newly spawned Erlang process uses 326 words of memory. The size can be found as follows:</p> <pre> -Erlang (BEAM) emulator version 5.6 [async-threads:0] [kernel-poll:false] +Erlang/OTP 24 [erts-12.0] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit] Eshell V5.6 (abort with ^G) 1> <input>Fun = fun() -> receive after infinity -> ok end end.</input> @@ -372,18 +370,14 @@ true <section> <title>SMP Emulator</title> - <p>The SMP emulator (introduced in R11B) takes advantage of a - multi-core or multi-CPU computer by running several Erlang scheduler - threads (typically, the same as the number of cores). Each scheduler - thread schedules Erlang processes in the same way as the Erlang scheduler - in the non-SMP emulator.</p> + <p>The emulator takes advantage of a multi-core or multi-CPU + computer by running several Erlang scheduler + threads (typically, the same as the number of cores).</p> - <p>To gain performance by using the SMP emulator, your application + <p>To gain performance from a multi-core computer, your application <em>must have more than one runnable Erlang process</em> most of the time. Otherwise, the Erlang emulator can still only run one Erlang process - at the time, but you must still pay the overhead for locking. Although - Erlang/OTP tries to reduce the locking overhead as much as possible, - it will never become exactly zero.</p> + at the time.</p> <p>Benchmarks that appear to be concurrent are often sequential. The estone benchmark, for example, is entirely sequential. So is |