MC2: High-Performance Garbage Collection for Memory-Constrained Environments
-
Upload
emery-berger -
Category
Technology
-
view
3.459 -
download
0
description
Transcript of MC2: High-Performance Garbage Collection for Memory-Constrained Environments
![Page 1: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/1.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
MC2: High Performance GC for Memory-Constrained
Environments
Narendran Sachindran
J. Eliot B. Moss
Emery D. Berger
University of Massachusetts Amherst
1
![Page 2: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/2.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Motivation
Java widely used Safety Portability
Garbage collector requirements High throughput Short pauses Good memory utilization
2
![Page 3: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/3.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Motivation
Handheld Devices Cellular phones, PDAs widely used Constrained memory
Diverse applications Media players Video games Digital cameras GPS Scaled down desktop apps (e-mail, browser etc.)
Require high throughput, short response time
3
![Page 4: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/4.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Talk Outline
Generational collection MC2 overview Algorithmic Details Experimental Results Conclusions
4
![Page 5: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/5.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Generational Collection
Divide heap into regions called generations Generations segregate objects by age Focus GC effort on younger objects
5
Nursery Old Generation
![Page 6: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/6.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Generational Copying Collection
6
Old Generation
A
B
C
Root
D
Root
E D
Root
E
Nursery
Remset
![Page 7: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/7.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Generational Copying Collection
7
A
B
C
Root
D
Root
E
A
Root
D
Root
B
E
Old GenerationNursery
![Page 8: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/8.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
MC2 Overview
Extends gen. copying, overcomes 2X overhead Divides space into equal size windows Reserves one or more windows for copying Collects in two phases: mark and copy
8
Generational copying
MC2
Nursery
Nursery
Old Generation
Old Generation
![Page 9: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/9.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
MC2 – Mark Phase
9
Logically order old gen. windows Three mark phase tasks:
Mark reachable objects Calculate live data volume in each window Build per-window remembered sets
Start when old gen. getting full: 80%, say Interleave marking with nursery allocation
Do some marking after every n bytes allocated Reduces mark phase pauses
![Page 10: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/10.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
MC2 Example – Mark Phase
MC2 marks two objects during nursery allocation
10
Old GenerationNursery L1 L2 L3 L4
Root
Root
Lmax Lmax
Root
Root
Root
Nursery
Unreachable
Reachable
MarkedCopied
![Page 11: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/11.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
MC2 Example – Classify Windows
Locate high-occupancy windows and discard remsets11
Old GenerationNursery L1 L2 L3 L4
Root
Root
Lmax Lmax
Root
Nursery
Unreachable
Reachable
MarkedCopied
![Page 12: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/12.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 12
MC2 Example – Classify Windows
Old GenerationNursery L1L2 L3 L4
Root
Root
Lmax Lmax
Root
Locate high-occupancy windows and discard remsets
Nursery
Unreachable
Reachable
MarkedCopied
![Page 13: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/13.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 13
MC2 Example – Classify Windows
Old GenerationNursery L2 L3 L4
Root
Root
Lmax Lmax
Root
Lmax
Locate high-occupancy windows and discard remsets
Nursery
Unreachable
Reachable
MarkedCopied
![Page 14: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/14.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
MC2 – Copy Phase
Copy and compact reachable data Performed in small increments
One windowful of live data copied per increment
One increment per nursery collection High-occupancy windows copied logically
14
![Page 15: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/15.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 15
MC2 Example – Copy Phase
Old GenerationNursery LmaxL2 L3 L4
Root
Root
Lmax Lmax
Root
Root Root
Root
Copy a window worth of data during nursery collection
Nursery
Unreachable
Reachable
MarkedCopied
![Page 16: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/16.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 16
MC2 Example – Copy Phase
Old GenerationNursery LmaxL2 L3 L4
Root
Lmax Lmax
Root
Root
Root
Nursery
Unreachable
Reachable
MarkedCopied
Copy a window worth of data during nursery collection
![Page 17: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/17.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 17
MC2 Example – Copy Phase
Old GenerationNursery L2 L3L4
Root
LmaxLmax Lmax
Root
Root
Root
Nursery
Unreachable
Reachable
MarkedCopied
Copy a window worth of data during nursery collection
![Page 18: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/18.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 18
MC2 Example – Copy Phase
Old GenerationNursery L2 L3 L4
Root
LmaxLmax Lmax
Root
Root
Root
Nursery
Unreachable
Reachable
MarkedCopied
Copy a window worth of data during nursery collection
![Page 19: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/19.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 19
MC2 Example – Copy Phase
Old GenerationNursery Lmax Lmax Lmax
Root
LmaxLmax Lmax
Root
Root
Root
Nursery
Unreachable
Reachable
MarkedCopied
Copy a window worth of data during nursery collection
![Page 20: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/20.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Algorithmic Details
Large remembered sets Bounding space overhead
Popular objects Preventing long pauses
20
![Page 21: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/21.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Handling large remembered sets
Normal remembered set for W1 stores 5 pointers (20 bytes on a 32 bit machine)
21
W1 W2
![Page 22: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/22.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Handling large remembered sets
Card table requires only 2 bytes (one per card)
22
W1 W2
Card 1
Card 2
![Page 23: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/23.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Handling large remembered sets
Set a limit on the total remembered set size (e.g., 5% of total heap space).
Replace large remsets with card table when total size approaches limit
Good tradeoff between speed and space utilization
23
![Page 24: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/24.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Handling popular objects
Divide heap into small physical windows Normally copy a group of physical windows Popular physical windows not grouped
24
Normal Windows PopularWindow
Normal Windows
![Page 25: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/25.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Handling popular objects
Divide heap into small physical windows Normally copy a group of physical windows Popular physical windows not grouped
25
Normal WindowGroup
PopularWindow
Normal WindowGroup
![Page 26: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/26.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Handling popular objects
Identify popular object while converting remset to card table
Isolate popular object at high end of heap Do not need to maintain references to the
objects Copying a popular object can cause a
long pause, but does not recur
26
![Page 27: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/27.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Experimental Results Implemented in Jikes RVM (2.2.3)/MMTk Pentium 4 1.7 GHz, 512MB memory, RedHat
Linux 2.4.7-10 Benchmarks: SPECjvm98, pseudojbb Collectors evaluated
Generational Mark-Sweep (MS) Generational Mark-(Sweep)-Compact (MSC) MC2
MSC, MC2 use separate code and data spaces Results: Execution time, pause time in a heap
1.8x program live size
27
![Page 28: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/28.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 28
Execution Time relative to MC2 (Heap Size = 1.8x max. live size)
-12%
-8%
-4%
0%
4%
8%
12%
Mark-Sweep Mark-Compact
![Page 29: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/29.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Max. Pause Time relative to MC2 (Heap Size = 1.8x max. live size)
MC2 max. pause range: 17-41ms29
123
4567
89
10
Rel
ativ
e M
ax.
Pau
se T
ime
Mark-Sweep Mark-Compact
![Page 30: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/30.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Bounded Mutator Utilization (jess)
30
![Page 31: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/31.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Bounded Mutator Utilization (javac)
31
![Page 32: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/32.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Conclusions
MC2: suitable for handheld devices with soft real time requirements Low space overhead (50-80%) Good throughput (3-4% slower than non-
incremental compacting collector) Short pause times (17-41ms, factor of 6 lower
than non-incremental compacting collector) Well distributed pauses
Also suitable for desktop environments
32
![Page 33: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/33.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Backup Slides
33
![Page 34: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/34.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Traditional Tracing Collectors
Mark-Sweep Fragmentation Locality effects
Mark-Compact Long pauses
Copying 2X space overhead
34
![Page 35: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/35.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Modern incremental collectors
Train collector – Hudson and Moss Performs well in moderate size heaps High copying overhead
Lang and Dupont, Ben Yitzhak et al Good throughput, pause times Do not address metadata overheads
Bacon, Cheng, Rajan Address memory-constrained device
requirements Require advanced compiler optimizations
35
![Page 36: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/36.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 36
jess Execution Time
![Page 37: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/37.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
javac Execution Time
37
![Page 38: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/38.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 38
Pause Time, Execution Time Comparison (80% space overhead)
Benchmark
MC2
MPT
(ms)
MS MPT
(ms)MS/MC2
ET
MSC
MPT
(ms)
MSC/MC2ET
_202_jess 17.2 53.2 1.11 65.7 1.04
_209_db 19.9 123.0 1.11 198.5 0.96
_213_javac 40.4 171.9 0.92 308.9 0.89
_227_mtrt 29.6 138.1 1.02 225.2 0.96
_228_jack 23.9 59.7 1.03 92.9 0.99
pseudojbb 41.5 168.2 1.08 314.5 0.98
Geo. Mean 27.2 107.7 1.04 172.7 0.97
![Page 39: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/39.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Bounded Mutator Utilization (jess)
39
![Page 40: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/40.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Bounded Mutator Utilization (javac)
40
![Page 41: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/41.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Max. Pause Time relative to MC2 (Heap Size = 1.8x max. live size)
MC2 max. pause range: 17-41ms41
123
4567
89
10
Rel
ativ
e M
ax.
Pau
se T
ime
Mark-Sweep Mark-Compact
5366
123
199
172
309
138
225
60
93 168
315
![Page 42: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/42.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 42
Incremental Marking Error
A B
CC D
![Page 43: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/43.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
Handling marking error
Track mutations using write barrier Record modified old generation objects Scan these modified objects at GC time Record interesting slots in remembered
sets
43
![Page 44: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/44.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science 44
JMTk Heap Layout
BootImage
Imm.ObjectSpace
LargeObjectSpace
Old Generation Nursery
![Page 45: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/45.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
_213_javac (MSC execution time)
45
![Page 46: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/46.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
MC2 Overview
46
Old Generation
Reachable data Unreachable data Copied data
Fre
e W
ind
ow
Fre
e W
ind
ow
Fre
e W
ind
ow
![Page 47: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/47.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
MC2 Overview
47
Old Generation
Reachable data Unreachable data Copied data
Fre
e W
ind
ow
Fre
e W
ind
ow
Fre
e W
ind
ow
Fre
e W
ind
ow
Fre
e W
ind
ow
Fre
e W
ind
ow
![Page 48: MC2: High-Performance Garbage Collection for Memory-Constrained Environments](https://reader037.fdocuments.us/reader037/viewer/2022102813/546c1622af7959680e8b5544/html5/thumbnails/48.jpg)
UUNIVERSITY OF NIVERSITY OF MMASSACHUSETTSASSACHUSETTS A AMHERST • MHERST • Department of Computer Science Department of Computer Science
MC2 Overview
48
Old Generation
Reachable data Unreachable data Copied data
Fre
e W
ind
ow
Fre
e W
ind
ow
Fre
e W
ind
ow
Fre
e W
ind
ow
Fre
e W
ind
ow