Changes between Version 32 and Version 33 of GCTasklist

Show
Ignore:
Timestamp:
08/19/10 23:25:51 (4 years ago)
Author:
nwellnhof
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GCTasklist

    v32 v33  
    3333 - Fix system-dependent code in src/gc/system.c (See #273) 
    3434 
     35 - Implement write barriers. They're needed to maintain the remembered set for generational GC and to update the mark stack for incremental GC. There is a proposal in PDD09 but using macros doesn't work well with pluggable GC cores and using function calls is expensive. Two approaches for efficient write barriers are card marking and sequential store buffers. Card marking is preferred for procedural languages that might make a lot of assignments. 
     36 
    3537== Problems to Solve == 
    3638 
     
    4143 - need to be able to free allocated pools (a precise compacting collector) 
    4244 
    43  - need to be able to identify and collect short-lived garbage much more cheaply (we avoid that to some extent by reducing the amount of garbage we create, but would be a significant win for making sub/method calls less expensive. Needs escape analysis. 
     45 - need to be able to identify and collect short-lived garbage much more cheaply (we avoid that to some extent by reducing the amount of garbage we create, but would be a significant win for making sub/method calls less expensive. Needs escape analysis and/or generational GC. 
    4446 
    4547 - copying collection 
     48 
     49 - The large number of memory pools that are currently used make it very hard to implement a copying or compacting collector or generational GC. Allocating from a single pool would make it much easier. This would more or less mean a complete rewrite but also a lot of simplification. 
    4650 
    4751== Completed Tasks ==