diff options
author | Ben Gamari <ben@well-typed.com> | 2019-02-05 00:10:43 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2019-10-20 21:15:37 -0400 |
commit | 6ff29c064dc042855a0a9a7ebe2cfac55edf17f3 (patch) | |
tree | ee99c710d467d0d9bed375e21226b6a79807cad9 /docs | |
parent | 04471c4f9037065c274736a3693cba116db7bcb9 (diff) | |
download | haskell-6ff29c064dc042855a0a9a7ebe2cfac55edf17f3.tar.gz |
rts: Introduce flag to enable the nonmoving old generation
This flag will enable the use of a non-moving oldest generation.
Diffstat (limited to 'docs')
-rw-r--r-- | docs/users_guide/runtime_control.rst | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/docs/users_guide/runtime_control.rst b/docs/users_guide/runtime_control.rst index 665c8c08e0..add0b6c537 100644 --- a/docs/users_guide/runtime_control.rst +++ b/docs/users_guide/runtime_control.rst @@ -313,6 +313,24 @@ collection. Hopefully, you won't need any of these in normal operation, but there are several things that can be tweaked for maximum performance. +.. rts-flag:: -xn + + :default: off + :since: 8.8.1 + + .. index:: + single: concurrent mark and sweep + + Enable the concurrent mark-and-sweep garbage collector for old generation + collectors. Typically GHC uses a stop-the-world copying garbage collector + for all generations. This can cause long pauses in execution during major + garbage collections. :rts-flag:`-xn` enables the use of a concurrent + mark-and-sweep garbage collector for oldest generation collections. + Under this collection strategy oldest-generation garbage collection + can proceed concurrently with mutation. + + Note that :rts-flag:`-xn` cannot be used with ``-G1`` nor :rts-flag:`-c`. + .. rts-flag:: -A ⟨size⟩ :default: 1MB |