8027295: Free CSet takes ~50% of young pause time

Improve fast card cache iteration and avoid taking locks when freeing the collection set.

Reviewed-by: brutisso
This commit is contained in:
Thomas Schatzl 2014-03-17 10:13:18 +01:00
parent cde8aa670b
commit d3e28ca682
7 changed files with 54 additions and 13 deletions

View file

@ -731,7 +731,8 @@ size_t OtherRegionsTable::fl_mem_size() {
void OtherRegionsTable::clear_fcc() {
uint hrs_idx = hr()->hrs_index();
for (uint i = 0; i < HeapRegionRemSet::num_par_rem_sets(); i++) {
uint num_par_remsets = HeapRegionRemSet::num_par_rem_sets();
for (uint i = 0; i < num_par_remsets; i++) {
_from_card_cache[i][hrs_idx] = -1;
}
}