Figures 1(b) through 5(b) each show the heap composition in lines of allocation as a function of time which is measured in bytes of al- location. These graphs illustrate object lifetime behaviors visually with respect to allocation time. Each line in the heap composition graph represents a cohort of contemporaneously allocated objects. Cohort sizes vary depending on the program; we choose sizes as a power of two (2n ) bytes of allocation so that each graph contains between 100 and 200 cohorts. The cohort with the oldest objects allocated in the heap is represented by the top line. The size of the cohorts in bytes of allocation corresponds to the area between each of the lines. As objects in a cohort die, the area becomes smaller and the lines move closer together, or if all objects in a cohort die, the lines merge.