Patent ID: 7499961
Filing Date: 2009-03-03
Classification: G06F,Y10S

Abstract:
1. A computer implemented method, comprising: structuring a remembered set data structure for a plurality of referring heap memory regions of a heap memory region of the computer, the remembered set data structure having a plurality of fixed-size data structures, each of the plurality of fixed-size data structures having a representation of information stored therein and a level of precision that differs from other levels in the plurality of data structures; based on a density of inter-region references between the heap memory region and a first referring heap memory region of the plurality of referring heap memory regions, entering remembered set information for the first referring heap memory region into one data structure of the plurality of data structures that has a highest level of precision relative to other data structures; when the density of inter-region references between the heap memory region and the first referring heap memory region increases, entering additional remembered set information for the first referring heap memory region into a data structure with a next highest level of precision relative to the other data structures; reclaiming allocated, but unused memory in the heap memory region using a space incremental garbage collector based on the remembered set data structure, when the sparse data structure entry fills, removing remembered set information for the first referring heap memory region from the sparse data structure into a first fixed size entry of the fixed size entries of the fine data structure, wherein the space incremental garbage collector scans the first fixed size entry of the fine data structure for performing garbage collection in the heap memory region; and when the fixed number of the fixed size entries of the fine data structure is reached, removing remembered set information for the first referring heap memory region from the first fixed size entry of the fine data structure and marking a first entry of the plurality of entries in the coarse data structure, wherein the first entry corresponds to the first referring heap memory region, wherein the space incremental garbage collector identifies the first referring heap memory region based on the first entry in the coarse data structure and scans the first referring heap memory region to identify the first pointer for performing garbage collection in the heap memory region.