序
本文主要试一下JDK11的ZGC
ZGC
ZGC全称是Z Garbage Collector,是一款可伸缩(scalable)的低延迟(low latency garbage)、并发(concurrent)垃圾回收器,旨在实现以下几个目标:
- 停顿时间不超过10ms
- 停顿时间不随heap大小或存活对象大小增大而增大
- 可以处理从几百兆到几T的内存大小
设置
-server -XX:+UnlockExperimentalVMOptions -XX:+UseZGC -Xlog:age*,gc*=info:file=gc-%t.log:time,tid,tags:filecount=3,filesize=20m -Djava.io.tmpdir=/tmp'复制代码
log实例
[2018-07-22T13:17:59.526+0000][7][gc,init] Initializing The Z Garbage Collector[2018-07-22T13:17:59.526+0000][7][gc,init] Version: 11-ea+22 (release)[2018-07-22T13:17:59.526+0000][7][gc,init] NUMA Support: Disabled[2018-07-22T13:17:59.526+0000][7][gc,init] CPUs: 2 total, 2 available[2018-07-22T13:17:59.530+0000][7][gc,init] Memory: 2001M[2018-07-22T13:17:59.530+0000][7][gc,init] Large Page Support: Disabled[2018-07-22T13:17:59.530+0000][7][gc,init] Workers: 4 parallel, 4 concurrent[2018-07-22T13:17:59.531+0000][7][gc,init] Heap backed by file: /memfd:java_heap[2018-07-22T13:17:59.532+0000][7][gc,init] Available space on backing filesystem: N/A[2018-07-22T13:17:59.540+0000][7][gc,init] Pre-touching: Disabled[2018-07-22T13:17:59.540+0000][7][gc,init] Pre-mapping: 32M[2018-07-22T13:17:59.576+0000][7][gc,init] Runtime Workers: 4 parallel[2018-07-22T13:17:59.584+0000][7][gc ] Using The Z Garbage Collector[2018-07-22T13:18:01.071+0000][13][gc,start] GC(0) Garbage Collection (Warmup)[2018-07-22T13:18:01.072+0000][19][gc,phases] GC(0) Pause Mark Start 0.370ms[2018-07-22T13:18:01.102+0000][13][gc,phases] GC(0) Concurrent Mark 29.459ms[2018-07-22T13:18:01.102+0000][19][gc,phases] GC(0) Pause Mark End 0.513ms[2018-07-22T13:18:01.103+0000][13][gc,phases] GC(0) Concurrent Process Non-Strong References 0.410ms[2018-07-22T13:18:01.103+0000][13][gc,phases] GC(0) Concurrent Reset Relocation Set 0.000ms[2018-07-22T13:18:01.103+0000][13][gc,phases] GC(0) Concurrent Destroy Detached Pages 0.000ms[2018-07-22T13:18:01.105+0000][13][gc,phases] GC(0) Concurrent Select Relocation Set 1.739ms[2018-07-22T13:18:01.105+0000][13][gc,phases] GC(0) Concurrent Prepare Relocation Set 0.342ms[2018-07-22T13:18:01.112+0000][19][gc,phases] GC(0) Pause Relocate Start 7.167ms[2018-07-22T13:18:01.126+0000][13][gc,phases] GC(0) Concurrent Relocate 9.600ms[2018-07-22T13:18:01.126+0000][13][gc,load ] GC(0) Load: 0.09/0.43/0.23[2018-07-22T13:18:01.128+0000][13][gc,mmu ] GC(0) MMU: 2ms/0.0%, 5ms/0.0%, 10ms/27.3%, 20ms/61.6%, 50ms/83.9%, 100ms/92.0%[2018-07-22T13:18:01.129+0000][13][gc,marking] GC(0) Mark: 4 stripe(s), 1 proactive flush(es), 2 terminate flush(es), 1 completion(s), 0 continuation(s) [2018-07-22T13:18:01.129+0000][13][gc,reloc ] GC(0) Relocation: Successful, 3M relocated[2018-07-22T13:18:01.129+0000][13][gc,nmethod] GC(0) NMethods: 379 registered, 0 unregistered[2018-07-22T13:18:01.129+0000][13][gc,metaspace] GC(0) Metaspace: 14M used, 14M capacity, 14M committed, 16M reserved[2018-07-22T13:18:01.129+0000][13][gc,ref ] GC(0) Soft: 491 encountered, 0 discovered, 0 enqueued[2018-07-22T13:18:01.129+0000][13][gc,ref ] GC(0) Weak: 477 encountered, 334 discovered, 102 enqueued[2018-07-22T13:18:01.129+0000][13][gc,ref ] GC(0) Final: 57 encountered, 0 discovered, 0 enqueued[2018-07-22T13:18:01.129+0000][13][gc,ref ] GC(0) Phantom: 1229 encountered, 1227 discovered, 1223 enqueued[2018-07-22T13:18:01.129+0000][13][gc,heap ] GC(0) Mark Start Mark End Relocate Start Relocate End High Low [2018-07-22T13:18:01.129+0000][13][gc,heap ] GC(0) Capacity: 92M (18%) 96M (19%) 96M (19%) 102M (20%) 102M (20%) 92M (18%) [2018-07-22T13:18:01.129+0000][13][gc,heap ] GC(0) Reserve: 40M (8%) 40M (8%) 40M (8%) 40M (8%) 40M (8%) 40M (8%) [2018-07-22T13:18:01.129+0000][13][gc,heap ] GC(0) Free: 410M (82%) 406M (81%) 406M (81%) 448M (89%) 448M (89%) 400M (80%) [2018-07-22T13:18:01.129+0000][13][gc,heap ] GC(0) Used: 52M (10%) 56M (11%) 56M (11%) 14M (3%) 62M (12%) 14M (3%) [2018-07-22T13:18:01.129+0000][13][gc,heap ] GC(0) Live: - 3M (1%) 3M (1%) 3M (1%) - - [2018-07-22T13:18:01.129+0000][13][gc,heap ] GC(0) Allocated: - 4M (1%) 4M (1%) 12M (2%) - - [2018-07-22T13:18:01.132+0000][13][gc,heap ] GC(0) Garbage: - 48M (10%) 48M (10%) 4M (1%) - - [2018-07-22T13:18:01.132+0000][13][gc,heap ] GC(0) Reclaimed: - - 0M (0%) 44M (9%) - - [2018-07-22T13:18:01.132+0000][13][gc ] GC(0) Garbage Collection (Warmup) 52M(10%)->14M(3%)[2018-07-22T13:18:02.172+0000][13][gc,start ] GC(1) Garbage Collection (Warmup)[2018-07-22T13:18:02.173+0000][19][gc,phases ] GC(1) Pause Mark Start 0.776ms[2018-07-22T13:18:02.198+0000][13][gc,phases ] GC(1) Concurrent Mark 24.883ms[2018-07-22T13:18:02.198+0000][19][gc,phases ] GC(1) Pause Mark End 0.256ms[2018-07-22T13:18:02.205+0000][13][gc,phases ] GC(1) Concurrent Process Non-Strong References 6.484ms[2018-07-22T13:18:02.205+0000][13][gc,phases ] GC(1) Concurrent Reset Relocation Set 0.005ms[2018-07-22T13:18:02.205+0000][13][gc,phases ] GC(1) Concurrent Destroy Detached Pages 0.000ms[2018-07-22T13:18:02.206+0000][13][gc,phases ] GC(1) Concurrent Select Relocation Set 1.104ms[2018-07-22T13:18:02.210+0000][13][gc,phases ] GC(1) Concurrent Prepare Relocation Set 3.879ms[2018-07-22T13:18:02.220+0000][19][gc,phases ] GC(1) Pause Relocate Start 9.183ms[2018-07-22T13:18:02.229+0000][13][gc,phases ] GC(1) Concurrent Relocate 8.888ms[2018-07-22T13:18:02.229+0000][13][gc,load ] GC(1) Load: 0.09/0.43/0.23[2018-07-22T13:18:02.229+0000][13][gc,mmu ] GC(1) MMU: 2ms/0.0%, 5ms/0.0%, 10ms/8.2%, 20ms/54.1%, 50ms/79.6%, 100ms/89.8%[2018-07-22T13:18:02.229+0000][13][gc,marking ] GC(1) Mark: 4 stripe(s), 3 proactive flush(es), 1 terminate flush(es), 1 completion(s), 0 continuation(s) [2018-07-22T13:18:02.229+0000][13][gc,reloc ] GC(1) Relocation: Successful, 6M relocated[2018-07-22T13:18:02.229+0000][13][gc,nmethod ] GC(1) NMethods: 572 registered, 0 unregistered[2018-07-22T13:18:02.229+0000][13][gc,metaspace] GC(1) Metaspace: 22M used, 22M capacity, 23M committed, 24M reserved[2018-07-22T13:18:02.229+0000][13][gc,ref ] GC(1) Soft: 838 encountered, 0 discovered, 0 enqueued[2018-07-22T13:18:02.229+0000][13][gc,ref ] GC(1) Weak: 875 encountered, 259 discovered, 154 enqueued[2018-07-22T13:18:02.229+0000][13][gc,ref ] GC(1) Final: 57 encountered, 46 discovered, 0 enqueued[2018-07-22T13:18:02.229+0000][13][gc,ref ] GC(1) Phantom: 2544 encountered, 2541 discovered, 2536 enqueued[2018-07-22T13:18:02.229+0000][13][gc,heap ] GC(1) Mark Start Mark End Relocate Start Relocate End High Low [2018-07-22T13:18:02.229+0000][13][gc,heap ] GC(1) Capacity: 148M (29%) 152M (30%) 152M (30%) 158M (31%) 158M (31%) 148M (29%) [2018-07-22T13:18:02.229+0000][13][gc,heap ] GC(1) Reserve: 40M (8%) 40M (8%) 40M (8%) 40M (8%) 40M (8%) 40M (8%) [2018-07-22T13:18:02.229+0000][13][gc,heap ] GC(1) Free: 354M (71%) 350M (70%) 350M (70%) 448M (89%) 448M (89%) 344M (69%) [2018-07-22T13:18:02.229+0000][13][gc,heap ] GC(1) Used: 108M (22%) 112M (22%) 112M (22%) 14M (3%) 118M (24%) 14M (3%) [2018-07-22T13:18:02.229+0000][13][gc,heap ] GC(1) Live: - 6M (1%) 6M (1%) 6M (1%) - - [2018-07-22T13:18:02.229+0000][13][gc,heap ] GC(1) Allocated: - 4M (1%) 4M (1%) 14M (3%) - - [2018-07-22T13:18:02.229+0000][13][gc,heap ] GC(1) Garbage: - 101M (20%) 101M (20%) 3M (1%) - - [2018-07-22T13:18:02.229+0000][13][gc,heap ] GC(1) Reclaimed: - - 0M (0%) 98M (20%) - - [2018-07-22T13:18:02.229+0000][13][gc ] GC(1) Garbage Collection (Warmup) 108M(22%)->14M(3%)[2018-07-22T13:18:03.670+0000][13][gc,start ] GC(2) Garbage Collection (Warmup)[2018-07-22T13:18:03.671+0000][19][gc,phases ] GC(2) Pause Mark Start 0.676ms[2018-07-22T13:18:03.731+0000][13][gc,phases ] GC(2) Concurrent Mark 59.720ms[2018-07-22T13:18:03.732+0000][19][gc,phases ] GC(2) Pause Mark End 0.344ms[2018-07-22T13:18:03.733+0000][13][gc,phases ] GC(2) Concurrent Process Non-Strong References 1.265ms[2018-07-22T13:18:03.733+0000][13][gc,phases ] GC(2) Concurrent Reset Relocation Set 0.151ms[2018-07-22T13:18:03.733+0000][13][gc,phases ] GC(2) Concurrent Destroy Detached Pages 0.000ms[2018-07-22T13:18:03.734+0000][13][gc,phases ] GC(2) Concurrent Select Relocation Set 1.317ms[2018-07-22T13:18:03.735+0000][13][gc,phases ] GC(2) Concurrent Prepare Relocation Set 0.768ms[2018-07-22T13:18:03.749+0000][19][gc,phases ] GC(2) Pause Relocate Start 13.753ms[2018-07-22T13:18:03.776+0000][13][gc,phases ] GC(2) Concurrent Relocate 26.811ms[2018-07-22T13:18:03.776+0000][13][gc,load ] GC(2) Load: 0.33/0.47/0.25[2018-07-22T13:18:03.776+0000][13][gc,mmu ] GC(2) MMU: 2ms/0.0%, 5ms/0.0%, 10ms/0.0%, 20ms/29.5%, 50ms/71.8%, 100ms/85.2%[2018-07-22T13:18:03.776+0000][13][gc,marking ] GC(2) Mark: 4 stripe(s), 3 proactive flush(es), 1 terminate flush(es), 0 completion(s), 0 continuation(s) [2018-07-22T13:18:03.776+0000][13][gc,reloc ] GC(2) Relocation: Successful, 8M relocated[2018-07-22T13:18:03.776+0000][13][gc,nmethod ] GC(2) NMethods: 1316 registered, 0 unregistered[2018-07-22T13:18:03.776+0000][13][gc,metaspace] GC(2) Metaspace: 29M used, 29M capacity, 29M committed, 30M reserved[2018-07-22T13:18:03.776+0000][13][gc,ref ] GC(2) Soft: 1822 encountered, 0 discovered, 0 enqueued[2018-07-22T13:18:03.776+0000][13][gc,ref ] GC(2) Weak: 1354 encountered, 493 discovered, 51 enqueued[2018-07-22T13:18:03.776+0000][13][gc,ref ] GC(2) Final: 57 encountered, 0 discovered, 0 enqueued[2018-07-22T13:18:03.776+0000][13][gc,ref ] GC(2) Phantom: 2712 encountered, 2709 discovered, 2704 enqueued[2018-07-22T13:18:03.776+0000][13][gc,heap ] GC(2) Mark Start Mark End Relocate Start Relocate End High Low [2018-07-22T13:18:03.776+0000][13][gc,heap ] GC(2) Capacity: 196M (39%) 198M (39%) 198M (39%) 210M (42%) 210M (42%) 196M (39%) [2018-07-22T13:18:03.776+0000][13][gc,heap ] GC(2) Reserve: 40M (8%) 40M (8%) 40M (8%) 40M (8%) 40M (8%) 40M (8%) [2018-07-22T13:18:03.776+0000][13][gc,heap ] GC(2) Free: 306M (61%) 304M (61%) 304M (61%) 436M (87%) 436M (87%) 292M (58%) [2018-07-22T13:18:03.776+0000][13][gc,heap ] GC(2) Used: 156M (31%) 158M (31%) 158M (31%) 26M (5%) 170M (34%) 26M (5%) [2018-07-22T13:18:03.776+0000][13][gc,heap ] GC(2) Live: - 12M (3%) 12M (3%) 12M (3%) - - [2018-07-22T13:18:03.777+0000][13][gc,heap ] GC(2) Allocated: - 2M (0%) 2M (0%) 18M (4%) - - [2018-07-22T13:18:03.777+0000][13][gc,heap ] GC(2) Garbage: - 143M (29%) 143M (29%) 11M (2%) - - [2018-07-22T13:18:03.777+0000][13][gc,heap ] GC(2) Reclaimed: - - 0M (0%) 132M (26%) - - [2018-07-22T13:18:03.777+0000][13][gc ] GC(2) Garbage Collection (Warmup) 156M(31%)->26M(5%)[2018-07-22T13:18:09.871+0000][14][gc,stats ] === Garbage Collection Statistics =======================================================================================================================[2018-07-22T13:18:09.872+0000][14][gc,stats ] Last 10s Last 10m Last 10h Total[2018-07-22T13:18:09.872+0000][14][gc,stats ] Avg / Max Avg / Max Avg / Max Avg / Max[2018-07-22T13:18:09.872+0000][14][gc,stats ] Collector: Garbage Collection Cycle 72.501 / 105.977 72.501 / 105.977 72.501 / 105.977 72.501 / 105.977 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Contention: Mark Segment Reset Contention 0 / 2 0 / 2 0 / 2 0 / 2 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Contention: Mark SeqNum Reset Contention 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Contention: Relocation Contention 0 / 2 0 / 2 0 / 2 0 / 2 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Critical: Allocation Stall 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Critical: Allocation Stall 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Critical: GC Locker Stall 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Critical: GC Locker Stall 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Allocation Rate 58 / 108 58 / 108 58 / 108 58 / 108 MB/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Heap Used After Mark 108 / 158 108 / 158 108 / 158 108 / 158 MB[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Heap Used After Relocation 18 / 26 18 / 26 18 / 26 18 / 26 MB[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Heap Used Before Mark 105 / 156 105 / 156 105 / 156 105 / 156 MB[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Heap Used Before Relocation 108 / 158 108 / 158 108 / 158 108 / 158 MB[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Out Of Memory 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Page Cache Flush 0 / 0 0 / 0 0 / 0 0 / 0 MB/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Page Cache Hit L1 15 / 54 15 / 54 15 / 54 15 / 54 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Page Cache Hit L2 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Page Cache Miss 15 / 36 15 / 36 15 / 36 15 / 36 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Undo Object Allocation Failed 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Undo Object Allocation Succeeded 0 / 2 0 / 2 0 / 2 0 / 2 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Memory: Undo Page Allocation 0 / 2 0 / 2 0 / 2 0 / 2 ops/s[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Concurrent Destroy Detached Pages 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Concurrent Mark 38.020 / 59.720 38.020 / 59.720 38.020 / 59.720 38.020 / 59.720 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Concurrent Mark Continue 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Concurrent Prepare Relocation Set 1.663 / 3.879 1.663 / 3.879 1.663 / 3.879 1.663 / 3.879 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Concurrent Process Non-Strong References 2.720 / 6.484 2.720 / 6.484 2.720 / 6.484 2.720 / 6.484 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Concurrent Relocate 15.100 / 26.811 15.100 / 26.811 15.100 / 26.811 15.100 / 26.811 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Concurrent Reset Relocation Set 0.052 / 0.151 0.052 / 0.151 0.052 / 0.151 0.052 / 0.151 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Concurrent Select Relocation Set 1.387 / 1.739 1.387 / 1.739 1.387 / 1.739 1.387 / 1.739 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Pause Mark End 0.371 / 0.513 0.371 / 0.513 0.371 / 0.513 0.371 / 0.513 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Pause Mark Start 0.607 / 0.776 0.607 / 0.776 0.607 / 0.776 0.607 / 0.776 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Phase: Pause Relocate Start 10.034 / 13.753 10.034 / 13.753 10.034 / 13.753 10.034 / 13.753 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent Mark 32.838 / 59.612 32.838 / 59.612 32.838 / 59.612 32.838 / 59.612 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent Mark Idle 2.243 / 14.299 2.243 / 14.299 2.243 / 14.299 2.243 / 14.299 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent Mark Try Flush 1.616 / 11.473 1.616 / 11.473 1.616 / 11.473 1.616 / 11.473 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent Mark Try Terminate 2.032 / 14.304 2.032 / 14.304 2.032 / 14.304 2.032 / 14.304 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent References Enqueue 0.006 / 0.007 0.006 / 0.007 0.006 / 0.007 0.006 / 0.007 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent References Process 2.188 / 5.858 2.188 / 5.858 2.188 / 5.858 2.188 / 5.858 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent Weak Roots 0.182 / 0.677 0.182 / 0.677 0.182 / 0.677 0.182 / 0.677 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent Weak Roots JNIWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent Weak Roots StringTable 0.370 / 0.597 0.370 / 0.597 0.370 / 0.597 0.370 / 0.597 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Concurrent Weak Roots VMWeakHandles 0.064 / 0.085 0.064 / 0.085 0.064 / 0.085 0.064 / 0.085 ms[2018-07-22T13:18:09.872+0000][14][gc,stats ] Subphase: Pause Mark Try Complete 0.001 / 0.004 0.001 / 0.004 0.001 / 0.004 0.001 / 0.004 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Remap TLABS 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Retire TLABS 0.004 / 0.005 0.004 / 0.005 0.004 / 0.005 0.004 / 0.005 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots 2.484 / 13.518 2.484 / 13.518 2.484 / 13.518 2.484 / 13.518 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots ClassLoaderDataGraph 2.215 / 13.477 2.215 / 13.477 2.215 / 13.477 2.215 / 13.477 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots CodeCache 0.237 / 0.434 0.237 / 0.434 0.237 / 0.434 0.237 / 0.434 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots JNIHandles 2.770 / 13.518 2.770 / 13.518 2.770 / 13.518 2.770 / 13.518 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots JNIWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots JRFWeak 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots JVMTIExport 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots JVMTIWeakExport 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots Management 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots ObjectSynchronizer 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots Setup 0.027 / 0.089 0.027 / 0.089 0.027 / 0.089 0.027 / 0.089 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots StringTable 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots SystemDictionary 4.388 / 10.525 4.388 / 10.525 4.388 / 10.525 4.388 / 10.525 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots Teardown 0.001 / 0.003 0.001 / 0.003 0.001 / 0.003 0.001 / 0.003 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots Threads 0.342 / 2.151 0.342 / 2.151 0.342 / 2.151 0.342 / 2.151 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots Universe 1.618 / 3.905 1.618 / 3.905 1.618 / 3.905 1.618 / 3.905 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Roots VMWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Weak Roots 0.000 / 0.002 0.000 / 0.002 0.000 / 0.002 0.000 / 0.002 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Weak Roots JFRWeak 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Weak Roots JNIWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Weak Roots JVMTIWeakExport 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Weak Roots Setup 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Weak Roots StringTable 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Weak Roots SymbolTable 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Weak Roots Teardown 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] Subphase: Pause Weak Roots VMWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:09.873+0000][14][gc,stats ] System: Java Threads 9 / 10 9 / 10 9 / 10 9 / 10 threads[2018-07-22T13:18:09.873+0000][14][gc,stats ] =========================================================================================================================================================[2018-07-22T13:18:10.272+0000][13][gc,start ] GC(3) Garbage Collection (Proactive)[2018-07-22T13:18:10.273+0000][19][gc,phases ] GC(3) Pause Mark Start 1.589ms[2018-07-22T13:18:10.308+0000][13][gc,phases ] GC(3) Concurrent Mark 33.980ms[2018-07-22T13:18:10.308+0000][19][gc,phases ] GC(3) Pause Mark End 0.202ms[2018-07-22T13:18:10.310+0000][13][gc,phases ] GC(3) Concurrent Process Non-Strong References 2.201ms[2018-07-22T13:18:10.310+0000][13][gc,phases ] GC(3) Concurrent Reset Relocation Set 0.027ms[2018-07-22T13:18:10.310+0000][13][gc,phases ] GC(3) Concurrent Destroy Detached Pages 0.000ms[2018-07-22T13:18:10.312+0000][13][gc,phases ] GC(3) Concurrent Select Relocation Set 1.833ms[2018-07-22T13:18:10.314+0000][13][gc,phases ] GC(3) Concurrent Prepare Relocation Set 1.417ms[2018-07-22T13:18:10.326+0000][19][gc,phases ] GC(3) Pause Relocate Start 12.547ms[2018-07-22T13:18:10.360+0000][13][gc,phases ] GC(3) Concurrent Relocate 33.471ms[2018-07-22T13:18:10.360+0000][13][gc,load ] GC(3) Load: 0.30/0.46/0.25[2018-07-22T13:18:10.360+0000][13][gc,mmu ] GC(3) MMU: 2ms/0.0%, 5ms/0.0%, 10ms/0.0%, 20ms/29.5%, 50ms/71.8%, 100ms/85.2%[2018-07-22T13:18:10.360+0000][13][gc,marking ] GC(3) Mark: 4 stripe(s), 6 proactive flush(es), 1 terminate flush(es), 0 completion(s), 0 continuation(s) [2018-07-22T13:18:10.360+0000][13][gc,reloc ] GC(3) Relocation: Successful, 12M relocated[2018-07-22T13:18:10.360+0000][13][gc,nmethod ] GC(3) NMethods: 1981 registered, 0 unregistered[2018-07-22T13:18:10.360+0000][13][gc,metaspace] GC(3) Metaspace: 40M used, 40M capacity, 40M committed, 42M reserved[2018-07-22T13:18:10.360+0000][13][gc,ref ] GC(3) Soft: 3096 encountered, 0 discovered, 0 enqueued[2018-07-22T13:18:10.360+0000][13][gc,ref ] GC(3) Weak: 3474 encountered, 783 discovered, 265 enqueued[2018-07-22T13:18:10.360+0000][13][gc,ref ] GC(3) Final: 65 encountered, 8 discovered, 0 enqueued[2018-07-22T13:18:10.361+0000][13][gc,ref ] GC(3) Phantom: 2778 encountered, 2771 discovered, 2769 enqueued[2018-07-22T13:18:10.361+0000][13][gc,heap ] GC(3) Mark Start Mark End Relocate Start Relocate End High Low [2018-07-22T13:18:10.361+0000][13][gc,heap ] GC(3) Capacity: 340M (68%) 340M (68%) 340M (68%) 348M (69%) 348M (69%) 340M (68%) [2018-07-22T13:18:10.361+0000][13][gc,heap ] GC(3) Reserve: 40M (8%) 40M (8%) 40M (8%) 40M (8%) 40M (8%) 40M (8%) [2018-07-22T13:18:10.361+0000][13][gc,heap ] GC(3) Free: 162M (32%) 162M (32%) 162M (32%) 434M (86%) 434M (86%) 154M (31%) [2018-07-22T13:18:10.361+0000][13][gc,heap ] GC(3) Used: 300M (60%) 300M (60%) 300M (60%) 28M (6%) 308M (61%) 28M (6%) [2018-07-22T13:18:10.361+0000][13][gc,heap ] GC(3) Live: - 19M (4%) 19M (4%) 19M (4%) - - [2018-07-22T13:18:10.361+0000][13][gc,heap ] GC(3) Allocated: - 0M (0%) 0M (0%) 16M (3%) - - [2018-07-22T13:18:10.361+0000][13][gc,heap ] GC(3) Garbage: - 280M (56%) 280M (56%) 8M (2%) - - [2018-07-22T13:18:10.361+0000][13][gc,heap ] GC(3) Reclaimed: - - 0M (0%) 272M (54%) - - [2018-07-22T13:18:10.361+0000][13][gc ] GC(3) Garbage Collection (Proactive) 300M(60%)->28M(6%)[2018-07-22T13:18:19.871+0000][14][gc,stats ] === Garbage Collection Statistics =======================================================================================================================[2018-07-22T13:18:19.871+0000][14][gc,stats ] Last 10s Last 10m Last 10h Total[2018-07-22T13:18:19.871+0000][14][gc,stats ] Avg / Max Avg / Max Avg / Max Avg / Max[2018-07-22T13:18:19.871+0000][14][gc,stats ] Collector: Garbage Collection Cycle 88.657 / 88.657 76.540 / 105.977 76.540 / 105.977 76.540 / 105.977 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Contention: Mark Segment Reset Contention 0 / 1 0 / 2 0 / 2 0 / 2 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Contention: Mark SeqNum Reset Contention 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Contention: Relocation Contention 0 / 0 0 / 2 0 / 2 0 / 2 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Critical: Allocation Stall 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Critical: Allocation Stall 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Critical: GC Locker Stall 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Critical: GC Locker Stall 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Allocation Rate 0 / 6 29 / 108 29 / 108 29 / 108 MB/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Heap Used After Mark 300 / 300 156 / 300 156 / 300 156 / 300 MB[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Heap Used After Relocation 28 / 28 20 / 28 20 / 28 20 / 28 MB[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Heap Used Before Mark 300 / 300 154 / 300 154 / 300 154 / 300 MB[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Heap Used Before Relocation 300 / 300 156 / 300 156 / 300 156 / 300 MB[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Out Of Memory 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Page Cache Flush 0 / 0 0 / 0 0 / 0 0 / 0 MB/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Page Cache Hit L1 0 / 6 8 / 54 8 / 54 8 / 54 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Page Cache Hit L2 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Page Cache Miss 0 / 4 7 / 36 7 / 36 7 / 36 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Undo Object Allocation Failed 0 / 0 0 / 0 0 / 0 0 / 0 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Undo Object Allocation Succeeded 0 / 0 0 / 2 0 / 2 0 / 2 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Memory: Undo Page Allocation 0 / 0 0 / 2 0 / 2 0 / 2 ops/s[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Concurrent Destroy Detached Pages 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Concurrent Mark 33.980 / 33.980 37.010 / 59.720 37.010 / 59.720 37.010 / 59.720 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Concurrent Mark Continue 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Concurrent Prepare Relocation Set 1.417 / 1.417 1.601 / 3.879 1.601 / 3.879 1.601 / 3.879 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Concurrent Process Non-Strong References 2.201 / 2.201 2.590 / 6.484 2.590 / 6.484 2.590 / 6.484 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Concurrent Relocate 33.471 / 33.471 19.692 / 33.471 19.692 / 33.471 19.692 / 33.471 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Concurrent Reset Relocation Set 0.027 / 0.027 0.046 / 0.151 0.046 / 0.151 0.046 / 0.151 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Concurrent Select Relocation Set 1.833 / 1.833 1.498 / 1.833 1.498 / 1.833 1.498 / 1.833 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Pause Mark End 0.202 / 0.202 0.329 / 0.513 0.329 / 0.513 0.329 / 0.513 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Pause Mark Start 1.589 / 1.589 0.853 / 1.589 0.853 / 1.589 0.853 / 1.589 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Phase: Pause Relocate Start 12.547 / 12.547 10.662 / 13.753 10.662 / 13.753 10.662 / 13.753 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent Mark 25.621 / 33.789 31.034 / 59.612 31.034 / 59.612 31.034 / 59.612 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent Mark Idle 1.338 / 1.358 2.193 / 14.299 2.193 / 14.299 2.193 / 14.299 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent Mark Try Flush 0.041 / 0.083 1.004 / 11.473 1.004 / 11.473 1.004 / 11.473 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent Mark Try Terminate 0.811 / 1.363 1.935 / 14.304 1.935 / 14.304 1.935 / 14.304 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent References Enqueue 0.008 / 0.008 0.006 / 0.008 0.006 / 0.008 0.006 / 0.008 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent References Process 0.579 / 0.579 1.786 / 5.858 1.786 / 5.858 1.786 / 5.858 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent Weak Roots 0.712 / 1.441 0.314 / 1.441 0.314 / 1.441 0.314 / 1.441 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent Weak Roots JNIWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent Weak Roots StringTable 1.319 / 1.320 0.641 / 1.320 0.641 / 1.320 0.641 / 1.320 ms[2018-07-22T13:18:19.871+0000][14][gc,stats ] Subphase: Concurrent Weak Roots VMWeakHandles 0.101 / 0.120 0.074 / 0.120 0.074 / 0.120 0.074 / 0.120 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Mark Try Complete 0.000 / 0.000 0.001 / 0.004 0.001 / 0.004 0.001 / 0.004 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Remap TLABS 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Retire TLABS 0.010 / 0.010 0.005 / 0.010 0.005 / 0.010 0.005 / 0.010 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots 3.991 / 12.072 2.861 / 13.518 2.861 / 13.518 2.861 / 13.518 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots ClassLoaderDataGraph 4.115 / 11.968 2.722 / 13.477 2.722 / 13.477 2.722 / 13.477 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots CodeCache 1.347 / 3.222 0.570 / 3.222 0.570 / 3.222 0.570 / 3.222 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots JNIHandles 4.024 / 12.072 3.112 / 13.518 3.112 / 13.518 3.112 / 13.518 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots JNIWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots JRFWeak 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots JVMTIExport 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots JVMTIWeakExport 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots Management 0.376 / 0.750 0.095 / 0.750 0.095 / 0.750 0.095 / 0.750 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots ObjectSynchronizer 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots Setup 0.120 / 0.219 0.050 / 0.219 0.050 / 0.219 0.050 / 0.219 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots StringTable 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots SystemDictionary 6.035 / 12.057 4.800 / 12.057 4.800 / 12.057 4.800 / 12.057 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots Teardown 0.001 / 0.003 0.001 / 0.003 0.001 / 0.003 0.001 / 0.003 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots Threads 0.493 / 1.076 0.380 / 2.151 0.380 / 2.151 0.380 / 2.151 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots Universe 0.003 / 0.003 1.214 / 3.905 1.214 / 3.905 1.214 / 3.905 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Roots VMWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Weak Roots 0.001 / 0.003 0.001 / 0.003 0.001 / 0.003 0.001 / 0.003 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Weak Roots JFRWeak 0.001 / 0.001 0.000 / 0.001 0.000 / 0.001 0.000 / 0.001 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Weak Roots JNIWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Weak Roots JVMTIWeakExport 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Weak Roots Setup 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Weak Roots StringTable 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Weak Roots SymbolTable 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Weak Roots Teardown 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 0.001 / 0.001 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] Subphase: Pause Weak Roots VMWeakHandles 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 0.000 / 0.000 ms[2018-07-22T13:18:19.872+0000][14][gc,stats ] System: Java Threads 17 / 17 11 / 17 11 / 17 11 / 17 threads复制代码
小结
ZGC在如下几个阶段是concurrent的:
- Marking
- Relocation/Compaction
- Relocation Set Selection
- Reference Processing
- JNI WeakRefs Cleaning