harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xiao-Feng Li" <xiaofeng...@gmail.com>
Subject Re: [drlvm][concurrent-gc] Tick is only concurrent sweeping?
Date Wed, 16 Apr 2008 11:23:30 GMT
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 <simon.harmony@gmail.com> 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 <xiaofeng.li@gmail.com> 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 <simon.harmony@gmail.com>
>  > 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 : Simon.Chow@Software School of Fudan University
>  > >
>  >
>  >
>  >
>  >
>  > --
>  > http://xiao-feng.blogspot.com
>  >
>
>
>
>  --
>
>
> From : Simon.Chow@Software School of Fudan University
>



-- 
http://xiao-feng.blogspot.com

Mime
View raw message