First, look at SUN's
Memory Management in the Java HotSpotTM Virtual Machine. Its from 2006 but contains a very nice introduction to GC, even parallel and small-pause collection algorithms are mentioned.
An another introduction slides are:
GC Introduction Presentation
When looking at performance of GCs, look at a nice study
Myths & Realities The Performance Impact of Garbage Collection from Steve Blackburn, Perry Cheng and Kathryn McKinley.
For interesting implementation details, I recommend:
- Barrier techniques for incremental tracing
- And Schism GC paper presented at PLDI (2010), contains also a very nice performance statistics.
- GC FAQ