From: James F. <jfo...@ya...> - 2005-10-28 01:06:55
|
Hello, I was wondering if anyone knew a way to enumerate the boot image objects from within a general Jikes garbage collector. The method TraceGenerator.boot does exactly what I need. The problem is that this method only works when the object headers contain extra tracing data. I need a method that works when this is not the case. Thanks! -Jim __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com |
From: Steve B. <Ste...@an...> - 2005-10-28 01:42:34
|
Hi Jim, Do you want to do it in an analysis context or in a performance context? (ie can you tolerate some overhead?) I can think of four options: 1. keep a linked list of all boot objects. Fast, but space inefficient, this is what tracegenerator does 2. use MMTk's new debugging framework, which keeps metadata on the side. You could pretty easily get this to do the task for you (you still pay for the metadata, but it is not accounted for in the heap size etc, as it is deliberately managed on the side) 3. perform a linear scan of the boot image after the mark phase (I think this is doable right now). This is time and space efficient. 4. simply instrument the trace mechanism so it identifies such object as it encounters them (cheap, but assumes you're OK with piggy backing a full heap trace). --Steve PS If you are going to use an opaque mail address, *please* state your affiliation as a courtesy to those on the list. This list is a great source of information, but it is voluntary and we all like to know who it is we're responding to. James Foucar wrote: >Hello, > >I was wondering if anyone knew a way to enumerate the >boot image objects from within a general Jikes garbage >collector. > >The method TraceGenerator.boot does exactly what I >need. The problem is that this method only works when >the object headers contain extra tracing data. I need >a method that works when this is not the case. > >Thanks! >-Jim > > > > >__________________________________ >Yahoo! Mail - PC Magazine Editors' Choice 2005 >http://mail.yahoo.com > > >------------------------------------------------------- >This SF.Net email is sponsored by the JBoss Inc. >Get Certified Today * Register for a JBoss Training Course >Free Certification Exam for All Training Attendees Through End of 2005 >Visit http://www.jboss.com/services/certification for more information >_______________________________________________ >Jikesrvm-researchers mailing list >Jik...@li... >https://lists.sourceforge.net/lists/listinfo/jikesrvm-researchers > > -- --Steve Research Fellow, Australian National University phone: +61 2 6125 4821 fax: +61 2 6125 0010 http://cs.anu.edu.au/~Steve.Blackburn |
From: <he...@ca...> - 2005-10-28 03:14:35
|
Another method I have implemented to enumerate boot objects is to enumerate the objects at build time. You need to add some instrumentation to the bootImageWriter, but this has the advantage of not adding any overhead at runtime (it also has the drawback of not being generated at each run, which is part of why I have not moved this into the Merlin implementation, but this may not be a problem for you). Sincerely, Matthew Hertz Steve Blackburn wrote: > Hi Jim, > > Do you want to do it in an analysis context or in a performance > context? (ie can you tolerate some overhead?) > > I can think of four options: > 1. keep a linked list of all boot objects. Fast, but space inefficient, > this is what tracegenerator does > 2. use MMTk's new debugging framework, which keeps metadata on the > side. You could pretty easily get this to do the task for you (you > still pay for the metadata, but it is not accounted for in the heap size > etc, as it is deliberately managed on the side) > 3. perform a linear scan of the boot image after the mark phase (I think > this is doable right now). This is time and space efficient. > 4. simply instrument the trace mechanism so it identifies such object as > it encounters them (cheap, but assumes you're OK with piggy backing a > full heap trace). > > --Steve > > PS If you are going to use an opaque mail address, *please* state your > affiliation as a courtesy to those on the list. This list is a great > source of information, but it is voluntary and we all like to know who > it is we're responding to. > > James Foucar wrote: > >> Hello, >> >> I was wondering if anyone knew a way to enumerate the >> boot image objects from within a general Jikes garbage >> collector. >> >> The method TraceGenerator.boot does exactly what I >> need. The problem is that this method only works when >> the object headers contain extra tracing data. I need >> a method that works when this is not the case. >> >> Thanks! >> -Jim >> >> >> >> >> __________________________________ Yahoo! Mail - PC Magazine Editors' >> Choice 2005 http://mail.yahoo.com >> >> >> ------------------------------------------------------- >> This SF.Net email is sponsored by the JBoss Inc. >> Get Certified Today * Register for a JBoss Training Course >> Free Certification Exam for All Training Attendees Through End of 2005 >> Visit http://www.jboss.com/services/certification for more information >> _______________________________________________ >> Jikesrvm-researchers mailing list >> Jik...@li... >> https://lists.sourceforge.net/lists/listinfo/jikesrvm-researchers >> >> > > |