wenyuzhao / mmtk-core

Memory Management ToolKit

Home Page:https://www.mmtk.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Completely remove block sweeping

wenyuzhao opened this issue · comments

Completely Remove young and mature block sweeping.

Steps:

  • Skip young block sweeping
  • Skip mature block sweeping
  • Performance measurements

Young block sweeping removal

  1. Ensure all survived young objects are strictly evacuated
  2. Do not do any sweeping on young blocks. Directly treat them as being already released/freed.
  3. During mutator allocation, linearly scan all blocks to find free blocks for allocation.

Mature block sweeping after decrements

  1. Do not do any sweeping on mature blocks.
  2. During mutator allocation, linearly scan all blocks, and figure out if a mature block is completely free, or partialy reusable.