< prev index next >

src/hotspot/share/gc/shared/adaptiveSizePolicy.cpp

Print this page
rev 52963 : 8212206: Refactor AdaptiveSizePolicy to separate out code related to GC overhead
Summary: Move check_gc_overhead_limit() and related code to its own class
Reviewed-by:

@@ -51,12 +51,10 @@
     _latest_minor_mutator_interval_seconds(0),
     _threshold_tolerance_percent(1.0 + ThresholdTolerance/100.0),
     _gc_pause_goal_sec(gc_pause_goal_sec),
     _young_gen_change_for_minor_throughput(0),
     _old_gen_change_for_major_throughput(0) {
-  assert(AdaptiveSizePolicyGCTimeLimitThreshold > 0,
-    "No opportunity to clear SoftReferences before GC overhead limit");
   _avg_minor_pause    =
     new AdaptivePaddedAverage(AdaptiveTimeWeight, PausePadding);
   _avg_minor_interval = new AdaptiveWeightedAverage(AdaptiveTimeWeight);
   _avg_minor_gc_cost  = new AdaptiveWeightedAverage(AdaptiveTimeWeight);
   _avg_major_gc_cost  = new AdaptiveWeightedAverage(AdaptiveTimeWeight);

@@ -271,11 +269,11 @@
   set_change_young_gen_for_throughput(0);
   set_decrease_for_footprint(0);
   set_decide_at_full_gc(0);
 }
 
-class AdaptiveSizePolicyTimeOverheadTester: public OverheadTester {
+class AdaptiveSizePolicyTimeOverheadTester: public GCOverheadTester {
   double _gc_cost;
 
  public:
   AdaptiveSizePolicyTimeOverheadTester(double gc_cost) : _gc_cost(gc_cost) {}
 

@@ -287,11 +285,11 @@
     // tenured gen.
     return _gc_cost > (GCTimeLimit / 100.0);
   }
 };
 
-class AdaptiveSizePolicySpaceOverheadTester: public OverheadTester {
+class AdaptiveSizePolicySpaceOverheadTester: public GCOverheadTester {
   size_t _eden_live;
   size_t _max_old_gen_size;
   size_t _max_eden_size;
   size_t _promo_size;
   double _avg_eden_live;

@@ -357,11 +355,10 @@
           (size_t)mem_free_limit);
 
     return free_in_old_gen < (size_t)mem_free_old_limit &&
            free_in_eden < (size_t)mem_free_eden_limit;
   }
-
 };
 
 void AdaptiveSizePolicy::check_gc_overhead_limit(
                                           size_t eden_live,
                                           size_t max_old_gen_size,
< prev index next >