The G1 garbage collector Ships with Oracle JDK7 ,targeted for multi-processor machines with high memory for achieving high through put ,
The G1 divides the available heap space into equal size regions and performing the global mark phase concurrently to determine the liveliness of an object throughout
the heap.After the mark phase completes, G1 knows which regions are mostly empty. It collects in these regions first, which usually yields a large amount of free space
We can also mention the pause time desirable for the garbage collection G1 uses a pause prediction model to meet a user-defined pause time target and selects the number of regions to collect based on the specified pause time target.
G1 copies objects from one or more regions of the heap to a single region on the heap, thus both compacts and frees up memory. This evacuation is performed in parallel on multi-processors, to decrease pause times and increase throughput