src/share/vm/gc_implementation/g1/g1RemSet.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/gc_implementation/g1/g1RemSet.cpp Wed Jan 15 01:40:59 2014
--- new/src/share/vm/gc_implementation/g1/g1RemSet.cpp Wed Jan 15 01:40:59 2014
*** 193,203 ****
--- 193,203 ----
// regions, or we successfully claimed the region.
HeapRegionRemSetIterator iter(hrrs);
size_t card_index;
! // We claim cards in block so as to recude the contention. The block size is determined by
! // We claim cards in block so as to reduce the contention. The block size is determined by
// the G1RSetScanBlockSize parameter.
size_t jump_to_card = hrrs->iter_claimed_next(_block_size);
for (size_t current_card = 0; iter.has_next(card_index); current_card++) {
if (current_card >= jump_to_card + _block_size) {
jump_to_card = hrrs->iter_claimed_next(_block_size);
*** 585,595 ****
--- 585,595 ----
return false;
}
// While we are processing RSet buffers during the collection, we
// actually don't want to scan any cards on the collection set,
! // since we don't want to update remebered sets with entries that
! // since we don't want to update remembered sets with entries that
// point into the collection set, given that live objects from the
// collection set are about to move and such entries will be stale
// very soon. This change also deals with a reliability issue which
// involves scanning a card in the collection set and coming across
// an array that was being chunked and looking malformed. Note,
src/share/vm/gc_implementation/g1/g1RemSet.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File