GCViewer icon indicating copy to clipboard operation
GCViewer copied to clipboard

enhance support for zgc and shenandoah

Open CuiWeiloong opened this issue 3 years ago • 3 comments

The latest GCViewer failed to parse some gc events of ZGC and ShenandoahGC. I fixed some bugs and added some gc event types in this PR.

  1. The event "Metaspace" in gc tag "[gc,metaspace]" don't match the "PATTERN_MEMORY" rules for ZGC and don't have GC number for Shenandoah, ignored in "DataReaderUnifiedJvmLogging.java:handleTagGcMetaspaceTail()" method.
// ZGC:
//  [1.182s][info][gc,metaspace] GC(0) Metaspace: 19M used, 19M capacity, 19M committed, 20M reserved
//  [1.182s][info][gc,metaspace] GC(0) Metaspace: 11M used, 12M committed, 1088M reserved
// G1:
//  [5.537s][info][gc,metaspace] GC(0) Metaspace: 118K(320K)->118K(320K) NonClass: 113K(192K)->113K(192K) Class: 4K(128K)->4K(128K
// Shenandoah:
// [5.063s][info][gc,metaspace] Metaspace: 13104K(13376K)->13192K(13440K) NonClass: 1345K(11456K)->11431K(11520K) Class: 1758K(1920K)->1761K(1920K)
  1. [gc,heap] -> Unknown gc type for ZGC: Excludes all lines that do not contain Capacity.
[1.182s][info][gc,metaspace] GC(0) Metaspace: 19M used, 19M capacity, 19M committed, 20M reserved
[1.182s][info][gc,heap     ] GC(0)                Mark Start          Mark End        Relocate Start      Relocate End           High               Low    
[1.182s][info][gc,heap     ] GC(0)  Capacity:      448M (11%)         452M (11%)         454M (11%)         454M (11%)         454M (11%)         448M (11%)        
[1.182s][info][gc,heap     ] GC(0)   Reserve:       48M (1%)           48M (1%)           48M (1%)           48M (1%)           48M (1%)           48M (1%)         
[1.182s][info][gc,heap     ] GC(0)      Free:     3506M (89%)        3502M (89%)        3758M (95%)        3874M (98%)        3874M (98%)        3500M (89%)        
[1.182s][info][gc,heap     ] GC(0)      Used:      400M (10%)         404M (10%)         148M (4%)           32M (1%)          406M (10%)          32M (1%)         
[1.182s][info][gc,heap     ] GC(0)      Live:         -                 6M (0%)            6M (0%)            6M (0%)             -                  -              
[1.182s][info][gc,heap     ] GC(0) Allocated:         -                 4M (0%)           10M (0%)           32M (1%)             -                  -              
[1.182s][info][gc,heap     ] GC(0)   Garbage:         -               393M (10%)         131M (3%)           13M (0%)             -                  -              
[1.182s][info][gc,heap     ] GC(0) Reclaimed:         -                  -               262M (7%)          380M (10%)            -                  -              
  1. Add new gc events "Concurrent Mark Free,Allocation Stall,Relocation Stall" for ZGC.
  2. Update some gc events that contain wrong GcPattern for ShenandoahGC.
  3. Add percentiles data to output csv file.
  4. Add "[gc,init" to LOG_ONLY_STRINGS.

Please review this PR.

Thanks, Weilong Cui

CuiWeiloong avatar Aug 22 '22 13:08 CuiWeiloong

Codecov Report

Merging #261 (e76f8a7) into develop (d74690e) will increase coverage by 0.20%. The diff coverage is 97.24%.

@@              Coverage Diff              @@
##             develop     #261      +/-   ##
=============================================
+ Coverage      70.44%   70.65%   +0.20%     
- Complexity      1536     1553      +17     
=============================================
  Files            146      146              
  Lines           8680     8769      +89     
  Branches        1405     1419      +14     
=============================================
+ Hits            6115     6196      +81     
- Misses          1973     1980       +7     
- Partials         592      593       +1     
Impacted Files Coverage Δ
...om/tagtraum/perf/gcviewer/imp/DataReaderTools.java 82.05% <ø> (ø)
...perf/gcviewer/imp/DataReaderUnifiedJvmLogging.java 81.40% <66.66%> (-0.46%) :arrow_down:
.../tagtraum/perf/gcviewer/model/AbstractGCEvent.java 86.47% <96.00%> (+0.39%) :arrow_up:
...raum/perf/gcviewer/exp/impl/SummaryDataWriter.java 90.63% <100.00%> (+2.42%) :arrow_up:
...tagtraum/perf/gcviewer/imp/DataReaderSun1_6_0.java 88.53% <100.00%> (-1.53%) :arrow_down:
...traum/perf/gcviewer/math/DoubleDataPercentile.java 68.42% <100.00%> (+1.75%) :arrow_up:
...java/com/tagtraum/perf/gcviewer/model/GCModel.java 86.37% <100.00%> (ø)
...gtraum/perf/gcviewer/ctrl/impl/GcSeriesLoader.java 74.15% <0.00%> (-2.25%) :arrow_down:
...va/com/tagtraum/perf/gcviewer/view/GCDocument.java 34.93% <0.00%> (+0.96%) :arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

codecov-commenter avatar Aug 30 '22 03:08 codecov-commenter

PING @chewiebug

xiangzhai avatar Sep 09 '22 01:09 xiangzhai

PING @chewiebug

xiangzhai avatar Sep 16 '22 01:09 xiangzhai