Looks like some guide is needed for concurrent GC as well. Please stay tuned for a few days. Thanks. -xiaofeng
On Wed, Apr 16, 2008 at 2:10 PM, Simon Chow <[EMAIL PROTECTED]> wrote: > Thank you Xiao-Feng > > I have built gc_gen using USE_UNIQUE_MARK_SWEEP_GC, then the default GC is a > concurrent one with wspace implementation. > > But, when I test it using LOS.java, a error occures at the 1st line of > sync_stack_pop(Sync_Stack* stack), the parameter 'stack' is always a fixed > address 0xffff0002, I guess it may be caused by a bad pointer written. Then > I tried to find the reason. > This case happened when 'wspace_clear_chunk_list' is performed, initially, > 'stack' value is from an element of 2 dimensional array called > 'pfc_pools_backup', which seems a copy of pfc_pools at the initial time of > wspace. But there is no problem when iterating pfc_pools in the same method. > So, What's the difference between pfc_pools_backup and pfc_pools in the > collection process? > > Thanks > > > > On 12/04/2008, Xiao-Feng Li <[EMAIL PROTECTED]> wrote: > > > > Simon, you should define USE_UNIQUE_MARK_SWEEP_GC for concurrent > > mark-sweep GC. You can run it with SPECJBB. > > > > Thanks, > > xiaofeng > > > > > > On Fri, Apr 11, 2008 at 9:38 PM, Simon Chow <[EMAIL PROTECTED]> > > wrote: > > > Hi all > > > > > > First, I would like to know which test suit used for gc_gen? Are these > > tests > > > in "working_vm\vm\tests\smoke\gc"? > > > > > > Second, I am using LOS.java as sample to trace the garbage collection > > > process. > > > My command configuration is : > > > -XX:gc.concurrent_gc=true -Xem:opt -verbose:gc gc.LOS > > > then a assertion error raised: > > > #else > > > /*FIXME: concurrent mark is not supported in GC_GEN*/ > > > assert(0); > > > return FALSE; > > > #endif > > > > > > So, Does it mean that I should use: > > > -XX:gc.concurrent_sweep=true > > > to start a concurrent garbage collector? > > > > > > > > > In addition, when I use generational mode, this assertion error is > > raised: > > > assert(!collector->rem_set); > > > in line 5 of function void lspace_compute_object_target(Collector* > > > collector, Lspace* lspace) in lspace_alloc_collect.cpp > > > > > > P.S. I am using HARMONY647153 > > > > > > Thanks > > > > > > -- > > > From : [EMAIL PROTECTED] School of Fudan University > > > > > > > > > > > > > -- > > http://xiao-feng.blogspot.com > > > > > > -- > > > From : [EMAIL PROTECTED] School of Fudan University > -- http://xiao-feng.blogspot.com
