|Issue||Fix Version||Assignee||Priority||Status||Resolution||Resolved In Build|
The parallel compacting collector (par compact, or par old) uses a table to track data about contiguous regions of the gc heap such as how much data is live in the region, whether a live object crosses onto the region, etc. Each region is currently fairly small to limit the portion of the marking bitmap that must be searched to compute the new (after compaction) location of an object. Regions could be made significantly larger (100x or more) by adding a very small table which holds data about object starts. Making regions larger would shrink the size of the data used by par compact, would translate directly into speed ups of phases that operate on regions, and may also speed up pointer updates by reducing the length of bitmap searches.