Mercurial > hg > truffle
comparison src/share/vm/gc_implementation/g1/g1RemSet.cpp @ 1611:215576b54709
6946048: G1: improvements to +PrintGCDetails output
Summary: Small improvements to G1's PrintGCDetails output. It also includes minor formatting details.
Reviewed-by: ysr, johnc
author | tonyp |
---|---|
date | Thu, 22 Apr 2010 15:20:16 -0400 |
parents | c18cbe5936b8 |
children | 5cbac8938c4c |
comparison
equal
deleted
inserted
replaced
1610:79107c3a6bd5 | 1611:215576b54709 |
---|---|
301 double scan_rs_time_sec = os::elapsedTime() - rs_time_start; | 301 double scan_rs_time_sec = os::elapsedTime() - rs_time_start; |
302 | 302 |
303 assert( _cards_scanned != NULL, "invariant" ); | 303 assert( _cards_scanned != NULL, "invariant" ); |
304 _cards_scanned[worker_i] = scanRScl.cards_done(); | 304 _cards_scanned[worker_i] = scanRScl.cards_done(); |
305 | 305 |
306 _g1p->record_scan_rs_start_time(worker_i, rs_time_start * 1000.0); | |
307 _g1p->record_scan_rs_time(worker_i, scan_rs_time_sec * 1000.0); | 306 _g1p->record_scan_rs_time(worker_i, scan_rs_time_sec * 1000.0); |
308 } | 307 } |
309 | 308 |
310 void HRInto_G1RemSet::updateRS(int worker_i) { | 309 void HRInto_G1RemSet::updateRS(int worker_i) { |
311 ConcurrentG1Refine* cg1r = _g1->concurrent_g1_refine(); | 310 ConcurrentG1Refine* cg1r = _g1->concurrent_g1_refine(); |
312 | 311 |
313 double start = os::elapsedTime(); | 312 double start = os::elapsedTime(); |
314 _g1p->record_update_rs_start_time(worker_i, start * 1000.0); | |
315 | |
316 // Apply the appropriate closure to all remaining log entries. | 313 // Apply the appropriate closure to all remaining log entries. |
317 _g1->iterate_dirty_card_closure(false, worker_i); | 314 _g1->iterate_dirty_card_closure(false, worker_i); |
318 // Now there should be no dirty cards. | 315 // Now there should be no dirty cards. |
319 if (G1RSLogCheckCardTable) { | 316 if (G1RSLogCheckCardTable) { |
320 CountNonCleanMemRegionClosure cl(_g1); | 317 CountNonCleanMemRegionClosure cl(_g1); |
469 // updating and scanning. See CRs 6677707 and 6677708. | 466 // updating and scanning. See CRs 6677707 and 6677708. |
470 if (G1UseParallelRSetUpdating || (worker_i == 0)) { | 467 if (G1UseParallelRSetUpdating || (worker_i == 0)) { |
471 updateRS(worker_i); | 468 updateRS(worker_i); |
472 scanNewRefsRS(oc, worker_i); | 469 scanNewRefsRS(oc, worker_i); |
473 } else { | 470 } else { |
474 _g1p->record_update_rs_start_time(worker_i, os::elapsedTime() * 1000.0); | |
475 _g1p->record_update_rs_processed_buffers(worker_i, 0.0); | 471 _g1p->record_update_rs_processed_buffers(worker_i, 0.0); |
476 _g1p->record_update_rs_time(worker_i, 0.0); | 472 _g1p->record_update_rs_time(worker_i, 0.0); |
477 _g1p->record_scan_new_refs_time(worker_i, 0.0); | 473 _g1p->record_scan_new_refs_time(worker_i, 0.0); |
478 } | 474 } |
479 if (G1UseParallelRSetScanning || (worker_i == 0)) { | 475 if (G1UseParallelRSetScanning || (worker_i == 0)) { |
480 scanRS(oc, worker_i); | 476 scanRS(oc, worker_i); |
481 } else { | 477 } else { |
482 _g1p->record_scan_rs_start_time(worker_i, os::elapsedTime() * 1000.0); | |
483 _g1p->record_scan_rs_time(worker_i, 0.0); | 478 _g1p->record_scan_rs_time(worker_i, 0.0); |
484 } | 479 } |
485 } else { | 480 } else { |
486 assert(worker_i == 0, "invariant"); | 481 assert(worker_i == 0, "invariant"); |
487 updateRS(0); | 482 updateRS(0); |