summaryrefslogtreecommitdiff
path: root/erts/preloaded/ebin/erts_literal_area_collector.beam
diff options
context:
space:
mode:
authorRickard Green <rickard@erlang.org>2021-11-24 22:50:13 +0100
committerRickard Green <rickard@erlang.org>2021-12-06 18:01:20 +0100
commit7241a6a3e6940b2efed5fde39f78ef8b69212b97 (patch)
treed164c13b060b67fa2137f463ea0431c4dd9b700a /erts/preloaded/ebin/erts_literal_area_collector.beam
parent1a68663cde280a24cee5073f48f3876dfbc3eb75 (diff)
downloaderlang-7241a6a3e6940b2efed5fde39f78ef8b69212b97.tar.gz
Introduce outstanding requests limit for system processes
This limit effects system processes that orchestrates operations that involves all processes in the system. Currently there are two such processes, the code purger process and the literal area collector process. They previously sent out requests to all processes on the system at once, and then waited for responses from these processes in order to determine when the operation had completed. When a process had handled such a request it could (and still can) continue executing Erlang code once it had served this request. If executing on priority normal or low, it would however not get another opportunity to execute until all other requests had been served. This negatively impacted responsiveness of processes during operations like these on systems with a huge amount of processes. This change limits the amount of outstanding request which will cause the system to interleave handling of requests like these with other execution and by this improve responsiveness on systems with a huge amount of processes. By default the limit is set to two times the amount of schedulers. This will make sure that there always will be enough outstanding requests to utilize all schedulers fully during operations like these while also letting other work execute without having to wait very long.
Diffstat (limited to 'erts/preloaded/ebin/erts_literal_area_collector.beam')
-rw-r--r--erts/preloaded/ebin/erts_literal_area_collector.beambin3272 -> 4452 bytes
1 files changed, 0 insertions, 0 deletions
diff --git a/erts/preloaded/ebin/erts_literal_area_collector.beam b/erts/preloaded/ebin/erts_literal_area_collector.beam
index 6a3ec567da..3091c07cc5 100644
--- a/erts/preloaded/ebin/erts_literal_area_collector.beam
+++ b/erts/preloaded/ebin/erts_literal_area_collector.beam
Binary files differ