-
Bug
-
Resolution: Won't Fix
-
P4
-
9
G1 preallocates the bucket entries for the SparsePRT/RSHashTable. The amount of preallocated buckets is its full capacity (e.g. allocates space for 100 SparsePRTEntry instances assigned to RSHashTable::_entries if current capacity is 100).
The RSHashTable will always be expanded in SparsePRT::add_card() (always protected by a lock) as soon as the RSHashTable reaches 50% occupancy. So in effect, 50% of allocated SparsePRTEntry instances are never ever used.
The amount of allocation should be at least changed to match the expansion threshold.
The RSHashTable will always be expanded in SparsePRT::add_card() (always protected by a lock) as soon as the RSHashTable reaches 50% occupancy. So in effect, 50% of allocated SparsePRTEntry instances are never ever used.
The amount of allocation should be at least changed to match the expansion threshold.