Skip to content

Commit ff53a38

Browse files
AlinaHovakimyanAlina Hovakimyan
andauthored
Add Evacuation workers getter for G1 GC (#366)
Co-authored-by: Alina Hovakimyan <alinahovakimyan@Alinas-MacBook-Pro.local>
1 parent 81b2744 commit ff53a38

2 files changed

Lines changed: 24 additions & 0 deletions

File tree

api/src/main/java/com/microsoft/gctoolkit/event/g1gc/G1Young.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ public class G1Young extends G1RealPause {
1818

1919
private double parallelPhaseDuration = -1.0d;
2020
private int gcWorkers;
21+
private int evacuationWorkersUsed;
22+
private int evacuationWorkersAvailable;
2123
private double codeRootFixupDuration = -1.0d;
2224
private double codeRootMigrationDuration = -1.0d;
2325
private double codeRootPurgeDuration = -1.0d;
@@ -62,6 +64,14 @@ public void setGcWorkers(int count) {
6264
this.gcWorkers = count;
6365
}
6466

67+
public void setEvacuationWorkersUsed(int evacuationWorkersUsed) {
68+
this.evacuationWorkersUsed = evacuationWorkersUsed;
69+
}
70+
71+
public void setEvacuationWorkersAvailable(int evacuationWorkersAvailable) {
72+
this.evacuationWorkersAvailable = evacuationWorkersAvailable;
73+
}
74+
6575
public void setCodeRootFixupDuration(double duration) {
6676
this.codeRootFixupDuration = duration;
6777
}
@@ -107,6 +117,14 @@ public int getGcWorkers() {
107117
return gcWorkers;
108118
}
109119

120+
public int getEvacuationWorkersUsed() {
121+
return evacuationWorkersUsed;
122+
}
123+
124+
public int getEvacuationWorkersAvailable() {
125+
return evacuationWorkersAvailable;
126+
}
127+
110128
public double getCodeRootFixupDuration() {
111129
return codeRootFixupDuration;
112130
}

parser/src/main/java/com/microsoft/gctoolkit/parser/G1GCForwardReference.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -656,6 +656,11 @@ private void fillInPhases(G1Young collection) {
656656
postEvacuateCSetPhaseNames().forEach(name -> collection.addPostEvacuationCollectionPhase(name, postEvacuateCSetPhaseDuration(name)));
657657
}
658658

659+
private void fillInWorkers(G1Young collection) {
660+
collection.setEvacuationWorkersUsed(evacuationWorkersUsed);
661+
collection.setEvacuationWorkersAvailable(evacuationWorkersAvailable);
662+
}
663+
659664
private DateTimeStamp pausePhaseDuringConcurrentCycleTime = null;
660665
private double pausePhaseDuringConcurrentCycleDuration = -1.0d;
661666

@@ -772,6 +777,7 @@ private G1Young buildYoung(G1Young collection) {
772777
fillInRegionSummary(collection);
773778
fillInMetaspaceStats(collection);
774779
fillInPhases(collection);
780+
fillInWorkers(collection);
775781
if (toSpaceExhausted) collection.toSpaceExhausted();
776782
if (hasReferenceGCSummary())
777783
collection.add(generateReferenceGCSummary());

0 commit comments

Comments
 (0)