aboutsummaryrefslogtreecommitdiffstats
path: root/lib/benchmark.rb
diff options
context:
space:
mode:
authorAaron Patterson <tenderlove@ruby-lang.org>2020-05-28 15:02:26 -0700
committerAaron Patterson <tenderlove@ruby-lang.org>2020-05-29 15:24:32 -0700
commit02b216e5a70235f42f537e895d6f1afd05d8916a (patch)
tree9e74ae2ba69e274a9fb1e468fa0c6687dced1616 /lib/benchmark.rb
parentc1f6552b586d6ef11345166c4864b68e9d68504c (diff)
downloadruby-02b216e5a70235f42f537e895d6f1afd05d8916a.tar.gz
Combine sweeping and moving
This commit combines the sweep step with moving objects. With this commit, we can do: ```ruby GC.start(compact: true) ``` This code will do the following 3 steps: 1. Fully mark the heap 2. Sweep + Move objects 3. Update references By default, this will compact in order that heap pages are allocated. In other words, objects will be packed towards older heap pages (as opposed to heap pages with more pinned objects like `GC.compact` does).
Diffstat (limited to 'lib/benchmark.rb')
0 files changed, 0 insertions, 0 deletions