Re: [rvm-research] Understanding GC implementations

Robin Garner <[email protected]>
Newsgroups gmane.comp.java.jikes.rvm.devel
Message-ID <[email protected]>
There's now a draft guide to how an MMTk collector works at

http://docs.codehaus.org/display/RVM/Anatomy+of+a+Garbage+Collector

I'll link it into the user guide at some point when we fix the issue
with displaying code blocks.


On 30/04/13 13:13, Robin Garner wrote:
> I'll start writing a user guide page about how an MMTk plan works.
>
> Email me direct with specific questions and I'll address them first.
>
> cheers,
> Robin
>
> On 30/04/13 13:02, Rifat Shahriyar wrote:
>> Hello,
>> Garbage collectors in Jikes RVM work in phases. There are phases for
>> mutator and collector. There are no explicit calls to invoke mark and
>> sweep phases.
>>
>> For mark sweep collector, marking is done by tracing the heap. Tracing
>> starts from the roots (see STACK_ROOTS and ROOTS phases in
>> SimpleCollector.java) and finishes with a transitive closure (see
>> CLOSURE phase in MSCollector.java). Sweeping is done by walking
>> through the heap and sweep objects that are not marked (see
>> msSpace.release method of RELEASE phase in MS.java).
>>
>> if you want to know how the phases are executed have a look at the
>> processPhaseStack method in Phase.java.
>>
>>
>> Regards
>> -
>> Rifat
>> Australian National University
>>
>> On 30/04/13 6:31 AM, Thai, Richard P wrote:
>>> I’ve mentioned before that I was trying my hand at making a garbage
>>> collector and that I wanted a better way towards understanding how
>>> GC’s operate in JikesRVM. I’ve read through how memory allocation
>>> works in JikesRVM, but my understanding of garbage collectors remains
>>> unchanged. Maybe a better approach would be to map a garbage
>>> collector who implementation I know (mark sweep for instance), and
>>> understand where the key phases of its execution are. Would anyone
>>> know where I’d be able to find the explicit calls to invoke the
>>> **mark** and **sweep** phases?
>>>
>>> Best Regards,
>>>
>>> Richard Thai
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Try New Relic Now & We'll Send You this Cool Shirt
>>> New Relic is the only SaaS-based application performance monitoring service 
>>> that delivers powerful full stack analytics. Optimize and monitor your
>>> browser, app, & servers with just a few lines of code. Try New Relic
>>> and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr
>>>
>>>
>>> _______________________________________________
>>> Jikesrvm-researchers mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/jikesrvm-researchers
>>
>>
>> ------------------------------------------------------------------------------
>> Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
>> Get 100% visibility into your production application - at no cost.
>> Code-level diagnostics for performance bottlenecks with <2% overhead
>> Download for free and get started troubleshooting in minutes.
>> http://p.sf.net/sfu/appdyn_d2d_ap1
>>
>>
>> _______________________________________________
>> Jikesrvm-researchers mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/jikesrvm-researchers


------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and 
their applications. This 200-page book is written by three acclaimed 
leaders in the field. The early access version is available now. 
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.