From b69fd5aa4daf4f6d2e78dde48d38fc4e34b0278c Mon Sep 17 00:00:00 2001 From: Lukas Larsson Date: Wed, 19 Jul 2017 11:13:58 +0200 Subject: erts: Cleanup erl and erlang docs after non-smp removal --- erts/doc/src/erl.xml | 42 +++++++++--------------------------------- erts/doc/src/erlang.xml | 34 +++++++++++++--------------------- erts/doc/src/notes.xml | 6 ++---- 3 files changed, 24 insertions(+), 58 deletions(-) (limited to 'erts') diff --git a/erts/doc/src/erl.xml b/erts/doc/src/erl.xml index 638e88ca31..71fe08d4e6 100644 --- a/erts/doc/src/erl.xml +++ b/erts/doc/src/erl.xml @@ -538,20 +538,6 @@

Note that a distributed node will fail to start if epmd is not running.

- - -

-smp enable and -smp start the Erlang runtime - system with SMP support enabled. This can fail if no runtime - system with SMP support is available. -smp auto starts - the Erlang runtime system with SMP support enabled if it is - available and more than one logical processor is detected. - -smp disable starts a runtime system without SMP support. - The runtime system without SMP support is deprecated and will - be removed in a future major release.

- -

See also flag+S.

-
-
(emulator flag)

Makes the emulator print its version number. The same @@ -902,7 +888,7 @@

Sets the number of scheduler threads to create and scheduler threads - to set online when SMP support has been enabled. The maximum for both + to set online. The maximum for both values is 1024. If the Erlang runtime system is able to determine the number of logical processors configured and logical processors available, Schedulers defaults to logical processors @@ -920,8 +906,6 @@

Specifying value 0 for Schedulers or SchedulersOnline resets the number of scheduler threads or scheduler threads online, respectively, to its default value.

-

This option is ignored if the emulator does not have SMP support - enabled (see flag -smp).

@@ -929,8 +913,8 @@

Similar to +S but uses percentages to set the number of scheduler threads to create, based on logical processors configured, and scheduler threads to set online, - based on logical processors available, when SMP support has been - enabled. Specified values must be > 0. For example, + based on logical processors available. + Specified values must be > 0. For example, +SP 50:25 sets the number of scheduler threads to 50% of the logical processors configured, and the number of scheduler threads online to 25% of the logical processors available. @@ -945,15 +929,13 @@ and 8 logical cores available, the combination of the options +S 4:4 +SP 50:25 (in either order) results in 2 scheduler threads (50% of 4) and 1 scheduler thread online (25% of 4).

-

This option is ignored if the emulator does not have SMP support - enabled (see flag -smp).

Sets the number of dirty CPU scheduler threads to create and dirty - CPU scheduler threads to set online when threading support has been - enabled. The maximum for both values is 1024, and each value is + CPU scheduler threads to set online. + The maximum for both values is 1024, and each value is further limited by the settings for normal schedulers:

The number of dirty CPU scheduler threads created cannot exceed @@ -977,16 +959,14 @@ executing on ordinary schedulers. If the amount of dirty CPU schedulers was allowed to be unlimited, dirty CPU bound jobs would potentially starve normal jobs.

-

This option is ignored if the emulator does not have threading - support enabled.

Similar to +SDcpu but uses percentages to set the number of dirty CPU scheduler threads to - create and the number of dirty CPU scheduler threads to set online - when threading support has been enabled. Specified values must be + create and the number of dirty CPU scheduler threads to set online. + Specified values must be > 0. For example, +SDPcpu 50:25 sets the number of dirty CPU scheduler threads to 50% of the logical processors configured and the number of dirty CPU scheduler threads online to 25% of the @@ -1003,13 +983,11 @@ the combination of the options +SDcpu 4:4 +SDPcpu 50:25 (in either order) results in 2 dirty CPU scheduler threads (50% of 4) and 1 dirty CPU scheduler thread online (25% of 4).

-

This option is ignored if the emulator does not have threading - support enabled.

-

Sets the number of dirty I/O scheduler threads to create when - threading support has been enabled. Valid range is 0-1024. By +

Sets the number of dirty I/O scheduler threads to create. + Valid range is 0-1024. By default, the number of dirty I/O scheduler threads created is 10, same as the default number of threads in the async thread pool.

@@ -1019,8 +997,6 @@ expected to execute on dirty I/O schedulers. If the user should schedule CPU bound jobs on dirty I/O schedulers, these jobs might starve ordinary jobs executing on ordinary schedulers.

-

This option is ignored if the emulator does not have threading - support enabled.

diff --git a/erts/doc/src/erlang.xml b/erts/doc/src/erlang.xml index 105734d5b2..ba4e07b158 100644 --- a/erts/doc/src/erlang.xml +++ b/erts/doc/src/erlang.xml @@ -4284,7 +4284,6 @@ RealSystem = system + MissedSystem

Locking is one of the following:

- false (emulator without SMP support) port_level (port-specific locking) driver_level (driver-specific locking) @@ -4688,8 +4687,8 @@ RealSystem = system + MissedSystem selected for execution. Notice however that this does not mean that no processes on priority low or normal can run when processes - are running on priority high. On the runtime - system with SMP support, more processes can be running + are running on priority high. When using multiple + schedulers, more processes can be running in parallel than processes on priority high. That is, a low and a high priority process can execute at the same time.

@@ -4704,10 +4703,8 @@ RealSystem = system + MissedSystem execution.

Do not depend on the scheduling - to remain exactly as it is today. Scheduling, at least on - the runtime system with SMP support, is likely to be - changed in a future release to use available - processor cores better.

+ to remain exactly as it is today. Scheduling is likely to be + changed in a future release to use available processor cores better.

There is no automatic mechanism for avoiding priority inversion, such as priority inheritance @@ -6219,8 +6216,7 @@ true

statistics(exact_reductions) is a more expensive operation than - statistics(reductions), - especially on an Erlang machine with SMP support.

+ statistics(reductions).

@@ -6604,8 +6600,8 @@ ok than available logical processors, this value may be greater than 1.0.

As of ERTS version 9.0, the Erlang runtime system - with SMP support will as default have more schedulers - than logical processors. This due to the dirty schedulers.

+ will as default have more schedulers than logical processors. + This due to the dirty schedulers.

scheduler_wall_time is by default disabled. To enable it, use @@ -7975,9 +7971,7 @@ ok disabled -

The emulator has only one scheduler thread. The - emulator does not have SMP support, or have been - started with only one scheduler thread.

+

The emulator has been started with only one scheduler thread.

blocked @@ -8340,8 +8334,7 @@ ok smp_support -

Returns true if the emulator has been compiled - with SMP support, otherwise false is returned.

+

Returns true.

start_time @@ -8364,8 +8357,7 @@ ok threads -

Returns true if the emulator has been compiled - with thread support, otherwise false is returned.

+

Returns true.

thread_pool_size @@ -10484,9 +10476,9 @@ true receive after 1 -> ok end, except that yield() is faster.

-

There is seldom or never any need to use this BIF, - especially in the SMP emulator, as other processes have a - chance to run in another scheduler thread anyway. +

There is seldom or never any need to use this BIF + as other processes have a chance to run in another scheduler + thread anyway. Using this BIF without a thorough grasp of how the scheduler works can cause performance degradation.

diff --git a/erts/doc/src/notes.xml b/erts/doc/src/notes.xml index ff7d593edb..985ea11b49 100644 --- a/erts/doc/src/notes.xml +++ b/erts/doc/src/notes.xml @@ -3493,8 +3493,7 @@

The previously introduced "eager check I/O" feature is now enabled by default.

Eager check I/O can be disabled using the erl - command line argument: +secio false

+ command line argument: +secio false

Characteristics impact compared to previous default:

Lower latency and smoother management of externally triggered I/O operations. @@ -4275,8 +4274,7 @@ prioritized to the same extent as when eager check I/O is disabled.

Eager check I/O can be enabled using the erl - command line argument: +secio true

+ command line argument: +secio true

Characteristics impact when enabled:

Lower latency and smoother management of externally triggered I/O operations. A slightly reduced -- cgit v1.2.3