You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue tracks the progress of supporting StickyImmix, a generational collector.
Write barrier
Routing RB_OBJ_WRITE and RB_OBJ_WRITTEN to MMTk barrier implementation
Map rb_gc_writebarrier_remember so that MMTk remembers the object
bulk array access
Use rb_gc_writebarrier_remember to remember parent array.
Change to region barrier if possible.
WB-unprotected objects
Registering
Scanning
Checking if an object is WB-unprotected
Unregistering Should't be possible. If an object becomes WB-unprotected, it remains so for the rest of its life
Testing
Tests pass with object movement disabled
Tests pass with object movement enabled
Test with Liquid benchmark
Optimising
fstring_table: During nursery collection, only update entries added since the last GC.
Other global weak tables can be optimised similarly if needed.
Write barrier fast paths: Implement the write barrier fast path as C function that can be inlined at call sites, and eliminate the call into mmtk-core.
Load balance: Further parallelise weak table processing
T_DATA is the majority of obj_free candidates.
Embedded data with default free function are not obj_free candidates.
If we can't free things in parallel, resurrect the idea of zombies and resurrect objects for obj_free.
Allocate Hash buffers in the GC heap, removing Hash from the set of obj_free candidates.
The text was updated successfully, but these errors were encountered:
This issue tracks the progress of supporting StickyImmix, a generational collector.
rb_gc_writebarrier_remember
so that MMTk remembers the objectrb_gc_writebarrier_remember
to remember parent array.UnregisteringShould't be possible. If an object becomes WB-unprotected, it remains so for the rest of its lifefstring_table
: During nursery collection, only update entries added since the last GC.T_DATA
is the majority ofobj_free
candidates.obj_free
candidates.obj_free
.Hash
buffers in the GC heap, removingHash
from the set ofobj_free
candidates.The text was updated successfully, but these errors were encountered: