src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Sdiff src/share/vm/gc_implementation/parallelScavenge

src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.hpp

Print this page




  36 // and application footprint).
  37 //
  38 // It also computes an optimal tenuring threshold between the young
  39 // and old generations, so as to equalize the cost of collections
  40 // of those generations, as well as optimial survivor space sizes
  41 // for the young generation.
  42 //
  43 // While this class is specifically intended for a generational system
  44 // consisting of a young gen (containing an Eden and two semi-spaces)
  45 // and a tenured gen, as well as a perm gen for reflective data, it
  46 // makes NO references to specific generations.
  47 //
  48 // 05/02/2003 Update
  49 // The 1.5 policy makes use of data gathered for the costs of GC on
  50 // specific generations.  That data does reference specific
  51 // generation.  Also diagnostics specific to generations have
  52 // been added.
  53 
  54 // Forward decls
  55 class elapsedTimer;
  56 class GenerationSizer;
  57 
  58 class PSAdaptiveSizePolicy : public AdaptiveSizePolicy {
  59  friend class PSGCAdaptivePolicyCounters;
  60  private:
  61   // These values are used to record decisions made during the
  62   // policy.  For example, if the young generation was decreased
  63   // to decrease the GC cost of minor collections the value
  64   // decrease_young_gen_for_throughput_true is used.
  65 
  66   // Last calculated sizes, in bytes, and aligned
  67   // NEEDS_CLEANUP should use sizes.hpp,  but it works in ints, not size_t's
  68 
  69   // Time statistics
  70   AdaptivePaddedAverage* _avg_major_pause;
  71 
  72   // Footprint statistics
  73   AdaptiveWeightedAverage* _avg_base_footprint;
  74 
  75   // Statistical data gathered for GC
  76   GCStats _gc_stats;




  36 // and application footprint).
  37 //
  38 // It also computes an optimal tenuring threshold between the young
  39 // and old generations, so as to equalize the cost of collections
  40 // of those generations, as well as optimial survivor space sizes
  41 // for the young generation.
  42 //
  43 // While this class is specifically intended for a generational system
  44 // consisting of a young gen (containing an Eden and two semi-spaces)
  45 // and a tenured gen, as well as a perm gen for reflective data, it
  46 // makes NO references to specific generations.
  47 //
  48 // 05/02/2003 Update
  49 // The 1.5 policy makes use of data gathered for the costs of GC on
  50 // specific generations.  That data does reference specific
  51 // generation.  Also diagnostics specific to generations have
  52 // been added.
  53 
  54 // Forward decls
  55 class elapsedTimer;

  56 
  57 class PSAdaptiveSizePolicy : public AdaptiveSizePolicy {
  58  friend class PSGCAdaptivePolicyCounters;
  59  private:
  60   // These values are used to record decisions made during the
  61   // policy.  For example, if the young generation was decreased
  62   // to decrease the GC cost of minor collections the value
  63   // decrease_young_gen_for_throughput_true is used.
  64 
  65   // Last calculated sizes, in bytes, and aligned
  66   // NEEDS_CLEANUP should use sizes.hpp,  but it works in ints, not size_t's
  67 
  68   // Time statistics
  69   AdaptivePaddedAverage* _avg_major_pause;
  70 
  71   // Footprint statistics
  72   AdaptiveWeightedAverage* _avg_base_footprint;
  73 
  74   // Statistical data gathered for GC
  75   GCStats _gc_stats;


src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File