@@ -217,6 +217,10 @@ public MemoryTab() {
217217 addEntry (LocalisationHelper .getString ("data_panel_memory_tenured_heap_usage" ));
218218 addEntry (LocalisationHelper .getString ("data_panel_memory_young_heap_usage" ));
219219 addEntry (LocalisationHelper .getString ("data_panel_memory_perm_heap_usage" ));
220+ addEntry (LocalisationHelper .getString ("data_panel_tenuredafterconcgc_max" ));
221+ addEntry (LocalisationHelper .getString ("data_panel_tenuredafterconcgc_avg" ));
222+ addEntry (LocalisationHelper .getString ("data_panel_footprintafterconcgc_max" ));
223+ addEntry (LocalisationHelper .getString ("data_panel_footprintafterconcgc_avg" ));
220224 addEntry (LocalisationHelper .getString ("data_panel_footprintafterfullgc_max" ));
221225 addEntry (LocalisationHelper .getString ("data_panel_footprintafterfullgc_avg" ));
222226 addEntry (LocalisationHelper .getString ("data_panel_footprintaftergc_avg" ));
@@ -246,6 +250,8 @@ public void setModel(GCModel model) {
246250 boolean gcSlopeDataAvailable = model .getRelativePostGCIncrease ().getN () != 0 ;
247251 boolean initiatingOccFractionAvailable = model .getCmsInitiatingOccupancyFraction ().getN () > 0 ;
248252 boolean promotionAvailable = model .getPromotion ().getN () > 0 ;
253+ boolean postConcurrentUsedSizeAvailable = model .getPostConcurrentCycleHeapUsedSizes ().getN () > 0 ;
254+ boolean postConcurrentUsedTenuredSizeAvailable = model .getPostConcurrentCycleTenuredUsedSizes ().getN () > 0 ;
249255
250256 updateValue (LocalisationHelper .getString ("data_panel_memory_heap_usage" ),
251257 footprintFormatter .format (model .getHeapUsedSizes ().getMax ())
@@ -267,6 +273,25 @@ public void setModel(GCModel model) {
267273 + " (" + percentFormatter .format (model .getPermUsedSizes ().getMax () / (double )model .getPermAllocatedSizes ().getMax () * 100 ) + "%)"
268274 + " / " + footprintFormatter .format (model .getPermAllocatedSizes ().getMax ()) : "n/a" ,
269275 model .getPermAllocatedSizes ().getN () > 0 );
276+ updateValue (LocalisationHelper .getString ("data_panel_footprintafterconcgc_max" ),
277+ postConcurrentUsedSizeAvailable ? footprintFormatter .format (model .getPostConcurrentCycleHeapUsedSizes ().getMax ())
278+ + " (" + percentFormatter .format (model .getPostConcurrentCycleHeapUsedSizes ().getMax () / (double )model .getFootprint () * 100 ) + "%)" : "n/a" ,
279+ postConcurrentUsedSizeAvailable );
280+ updateValue (LocalisationHelper .getString ("data_panel_footprintafterconcgc_avg" ),
281+ postConcurrentUsedSizeAvailable ? footprintFormatter .format (model .getPostConcurrentCycleHeapUsedSizes ().average ())
282+ + " (\u03c3 =" + sigmaMemoryFormat (model .getPostConcurrentCycleHeapUsedSizes ().standardDeviation ()) +")" : "n/a" ,
283+ postConcurrentUsedSizeAvailable && isSignificant (model .getPostConcurrentCycleHeapUsedSizes ().average (),
284+ model .getPostConcurrentCycleHeapUsedSizes ().standardDeviation ()));
285+ updateValue (LocalisationHelper .getString ("data_panel_tenuredafterconcgc_max" ),
286+ postConcurrentUsedTenuredSizeAvailable ? footprintFormatter .format (model .getPostConcurrentCycleTenuredUsedSizes ().getMax ())
287+ + " (" + percentFormatter .format (model .getPostConcurrentCycleTenuredUsedSizes ().getMax () / (double )model .getTenuredAllocatedSizes ().getMax () * 100 ) + "% / "
288+ + percentFormatter .format (model .getPostConcurrentCycleTenuredUsedSizes ().getMax () / (double )model .getFootprint () * 100 ) + "%)" : "n/a" ,
289+ postConcurrentUsedTenuredSizeAvailable );
290+ updateValue (LocalisationHelper .getString ("data_panel_tenuredafterconcgc_avg" ),
291+ postConcurrentUsedTenuredSizeAvailable ? footprintFormatter .format (model .getPostConcurrentCycleTenuredUsedSizes ().average ())
292+ + " (\u03c3 =" + sigmaMemoryFormat (model .getPostConcurrentCycleTenuredUsedSizes ().standardDeviation ()) +")" : "n/a" ,
293+ postConcurrentUsedTenuredSizeAvailable && isSignificant (model .getPostConcurrentCycleTenuredUsedSizes ().average (),
294+ model .getPostConcurrentCycleTenuredUsedSizes ().standardDeviation ()));
270295 updateValue (LocalisationHelper .getString ("data_panel_footprintafterfullgc_max" ),
271296 fullGcDataAvailable ? footprintFormatter .format (model .getFootprintAfterFullGC ().getMax ())
272297 + " (" + percentFormatter .format (model .getFootprintAfterFullGC ().getMax () / (double )model .getFootprint () * 100 ) + "%)" : "n/a" ,
@@ -435,6 +460,8 @@ public SummaryTab() {
435460 super ();
436461
437462 addEntry (LocalisationHelper .getString ("data_panel_memory_heap_usage" ));
463+ addEntry (LocalisationHelper .getString ("data_panel_footprintafterconcgc_max" ));
464+ addEntry (LocalisationHelper .getString ("data_panel_tenuredafterconcgc_max" ));
438465 addEntry (LocalisationHelper .getString ("data_panel_footprintafterfullgc_max" ));
439466 addEntry (LocalisationHelper .getString ("data_panel_freedmemory" ));
440467 addEntry (LocalisationHelper .getString ("data_panel_freedmemorypermin" ));
@@ -449,12 +476,23 @@ public SummaryTab() {
449476
450477 public void setModel (GCModel model ) {
451478 boolean fullGcDataAvailable = model .getFootprintAfterFullGC ().getN () > 0 ;
479+ boolean postConcurrentUsedSizeAvailable = model .getPostConcurrentCycleHeapUsedSizes ().getN () > 0 ;
480+ boolean postConcurrentUsedTenuredSizeAvailable = model .getPostConcurrentCycleTenuredUsedSizes ().getN () > 0 ;
452481
453482 updateValue (LocalisationHelper .getString ("data_panel_memory_heap_usage" ),
454483 footprintFormatter .format (model .getHeapUsedSizes ().getMax ())
455484 + " (" + percentFormatter .format (model .getHeapUsedSizes ().getMax () / (double )model .getHeapAllocatedSizes ().getMax () * 100 ) + "%)"
456485 + " / " + footprintFormatter .format (model .getHeapAllocatedSizes ().getMax ()),
457486 true );
487+ updateValue (LocalisationHelper .getString ("data_panel_footprintafterconcgc_max" ),
488+ postConcurrentUsedSizeAvailable ? footprintFormatter .format (model .getPostConcurrentCycleHeapUsedSizes ().getMax ())
489+ + " (" + percentFormatter .format (model .getPostConcurrentCycleHeapUsedSizes ().getMax () / (double )model .getFootprint () * 100 ) + "%)" : "n/a" ,
490+ postConcurrentUsedSizeAvailable );
491+ updateValue (LocalisationHelper .getString ("data_panel_tenuredafterconcgc_max" ),
492+ postConcurrentUsedTenuredSizeAvailable ? footprintFormatter .format (model .getPostConcurrentCycleTenuredUsedSizes ().getMax ())
493+ + " (" + percentFormatter .format (model .getPostConcurrentCycleTenuredUsedSizes ().getMax () / (double )model .getTenuredAllocatedSizes ().getMax () * 100 ) + "% / "
494+ + percentFormatter .format (model .getPostConcurrentCycleTenuredUsedSizes ().getMax () / (double )model .getFootprint () * 100 ) + "%)" : "n/a" ,
495+ postConcurrentUsedTenuredSizeAvailable );
458496 updateValue (LocalisationHelper .getString ("data_panel_footprintafterfullgc_max" ),
459497 fullGcDataAvailable ? footprintFormatter .format (model .getFootprintAfterFullGC ().getMax ())
460498 + " (" + percentFormatter .format (model .getFootprintAfterFullGC ().getMax () / (double )model .getFootprint () * 100 ) + "%)" : "n/a" ,
0 commit comments