--- old/src/share/vm/gc_implementation/g1/g1HotCardCache.cpp 2014-10-09 13:31:00.257513154 +0200 +++ new/src/share/vm/gc_implementation/g1/g1HotCardCache.cpp 2014-10-09 13:31:00.161516508 +0200 @@ -43,6 +43,7 @@ _hot_cache_idx = 0; // For refining the cards in the hot cache in parallel + _hot_cache_par_chunk_size = ClaimChunkSize; _hot_cache_par_claimed_idx = 0; _card_counts.initialize(card_counts_storage); @@ -98,7 +99,7 @@ int start_idx; while ((start_idx = _hot_cache_par_claimed_idx) < _n_hot) { // read once - int end_idx = start_idx + ClaimChunkSize; + int end_idx = start_idx + _hot_cache_par_chunk_size; if (start_idx == Atomic::cmpxchg(end_idx, &_hot_cache_par_claimed_idx, start_idx)) {