Mercurial > hg > graal-jvmci-8
comparison src/share/vm/gc_implementation/g1/g1RemSet.hpp @ 890:6cb8e9df7174
6819077: G1: first GC thread coming late into the GC.
Summary: The first worker thread is delayed when entering the GC because it clears the card count table that is used in identifying hot cards. Replace the card count table with a dynamically sized evicting hash table that includes an epoch based counter.
Reviewed-by: iveresov, tonyp
author | johnc |
---|---|
date | Tue, 04 Aug 2009 16:00:17 -0700 |
parents | df6caf649ff7 |
children | c18cbe5936b8 |
comparison
equal
deleted
inserted
replaced
889:15c5903cf9e1 | 890:6cb8e9df7174 |
---|---|
155 } else { | 155 } else { |
156 new_refs_iterate_work<oop>(cl); | 156 new_refs_iterate_work<oop>(cl); |
157 } | 157 } |
158 } | 158 } |
159 | 159 |
160 // The routine that performs the actual work of refining a dirty | |
161 // card. | |
162 void concurrentRefineOneCard_impl(jbyte* card_ptr, int worker_i); | |
163 | |
160 protected: | 164 protected: |
161 template <class T> void write_ref_nv(HeapRegion* from, T* p); | 165 template <class T> void write_ref_nv(HeapRegion* from, T* p); |
162 template <class T> void par_write_ref_nv(HeapRegion* from, T* p, int tid); | 166 template <class T> void par_write_ref_nv(HeapRegion* from, T* p, int tid); |
163 | 167 |
164 public: | 168 public: |