Opened 9 years ago

Closed 8 years ago

#1566 closed proposed-project (wontfix)

Implement the Immix garbage collector in GHC

Reported by: simonmar Owned by:
Priority: good Keywords:
Cc: mad.one@…, marcot@…, milos.hadzic@… Difficulty: 1 person Summer
Mentor: not-accepted Topic: GHC

Description (last modified by Milos Hadzic)

Paper: http://cs.anu.edu.au/techreports/2007/TR-CS-07-04.pdf

The Immix collector by all accounts is a better compromise that either copying or mark/sweep.

It's not a terribly hard job to implement it, but it needs a student that isn't afraid to get their hands dirty in the GC code. I've already done some initial work on it: GHC has a mark-region collector that can reclaim whole blocks, the main difference between this and Immix is that Immix uses a much smaller block size. In GHC we'd have to subdivide blocks and keep track of a liveness bitmap or something - there's a bit of design work to be done anyway.

Comments from Thomas Schilling who looked into this earlier: http://www.haskell.org/pipermail/cvs-ghc/2009-February/047626.html

Interested Mentors

  • Simon Marlow

Interested Students

  • Austin Seipp <mad.one@…>
  • Marco Túlio Gontijo e Silva <marcot@…>
  • Milos Hadzic <milos.hadzic@…>

Change History (4)

comment:1 Changed 9 years ago by Austin Seipp

Cc: mad.one@… added
Description: modified (diff)

comment:2 Changed 8 years ago by Marco Túlio Gontijo e Silva

Cc: marcot@… added
Description: modified (diff)

comment:3 Changed 8 years ago by Milos Hadzic

Cc: milos.hadzic@… added
Description: modified (diff)

comment:4 Changed 8 years ago by guest

Resolution: wontfix
Status: newclosed

This was a 2010 SoC project. Given that it failed (no Immix GC in GHC, and no prospects of it being added any time soon), it seems unlikely Google will approve another SoC project based on Immix any time soon. Since active tickets should be plausible SoC projects, I'm going to close this.

Note: See TracTickets for help on using tickets.