Mercurial > hg > truffle
comparison src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp @ 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 | 15c5903cf9e1 |
children | e1fdf4fd34dc 148e5441d916 |
comparison
equal
deleted
inserted
replaced
889:15c5903cf9e1 | 890:6cb8e9df7174 |
---|---|
2412 _cg1r->threads_do(tc); | 2412 _cg1r->threads_do(tc); |
2413 tc->do_thread(_czft); | 2413 tc->do_thread(_czft); |
2414 } | 2414 } |
2415 | 2415 |
2416 void G1CollectedHeap::print_tracing_info() const { | 2416 void G1CollectedHeap::print_tracing_info() const { |
2417 concurrent_g1_refine()->print_final_card_counts(); | |
2418 | |
2419 // We'll overload this to mean "trace GC pause statistics." | 2417 // We'll overload this to mean "trace GC pause statistics." |
2420 if (TraceGen0Time || TraceGen1Time) { | 2418 if (TraceGen0Time || TraceGen1Time) { |
2421 // The "G1CollectorPolicy" is keeping track of these stats, so delegate | 2419 // The "G1CollectorPolicy" is keeping track of these stats, so delegate |
2422 // to that. | 2420 // to that. |
2423 g1_policy()->print_tracing_info(); | 2421 g1_policy()->print_tracing_info(); |