void PSGCAdaptivePolicyCounters::update_counters_from_policy() {
  if (UsePerfData) {
    GCAdaptivePolicyCounters::update_counters_from_policy();
    update_eden_size();
    update_promo_size();
    update_avg_old_live();
    update_survivor_size_counters();
    update_avg_promoted_avg();
    update_avg_promoted_dev();
    update_avg_promoted_padded_avg();
    update_avg_pretenured_padded_avg();

    update_avg_major_pause();
    update_avg_major_interval();
    update_minor_gc_cost_counter();
    update_major_gc_cost_counter();
    update_mutator_cost_counter();
    update_decrement_tenuring_threshold_for_gc_cost();
    update_increment_tenuring_threshold_for_gc_cost();
    update_decrement_tenuring_threshold_for_survivor_limit();
    update_live_space();
    update_free_space();
    update_avg_base_footprint();

    update_change_old_gen_for_maj_pauses();
    update_change_young_gen_for_maj_pauses();
    update_change_old_gen_for_min_pauses();

    update_change_old_gen_for_throughput();
    update_change_young_gen_for_throughput();

    update_decrease_for_footprint();
    update_decide_at_full_gc_counter();

    update_major_pause_old_slope();
    update_minor_pause_old_slope();
    update_major_pause_young_slope();
    update_minor_collection_slope_counter();
    update_gc_overhead_limit_exceeded_counter();
    update_live_at_last_full_gc_counter();
  }
}
void CMSGCAdaptivePolicyCounters::update_counters_from_policy() {
  if (UsePerfData && (cms_size_policy() != NULL)) {

    GCAdaptivePolicyCounters::update_counters_from_policy();

    update_major_gc_cost_counter();
    update_mutator_cost_counter();

    update_eden_size();
    update_promo_size();

    // If these updates from the last_sample() work,
    // revise the update methods for these counters
    // (both here and in PS).
    update_survived((size_t) cms_size_policy()->avg_survived()->last_sample());

    update_avg_concurrent_time_counter();
    update_avg_concurrent_interval_counter();
    update_avg_concurrent_gc_cost_counter();
#ifdef NOT_PRODUCT
    update_initial_pause_counter();
    update_remark_pause_counter();
#endif
    update_avg_initial_pause_counter();
    update_avg_remark_pause_counter();

    update_avg_cms_STW_time_counter();
    update_avg_cms_STW_gc_cost_counter();

    update_avg_cms_free_counter();
    update_avg_cms_free_at_sweep_counter();
    update_avg_cms_promo_counter();

    update_avg_msc_pause_counter();
    update_avg_msc_interval_counter();
    update_msc_gc_cost_counter();

    update_avg_ms_pause_counter();
    update_avg_ms_interval_counter();
    update_ms_gc_cost_counter();

    update_avg_old_live_counter();

    update_survivor_size_counters();
    update_avg_survived_avg_counters();
    update_avg_survived_dev_counters();

    update_decrement_tenuring_threshold_for_gc_cost();
    update_increment_tenuring_threshold_for_gc_cost();
    update_decrement_tenuring_threshold_for_survivor_limit();

    update_change_young_gen_for_maj_pauses();

    update_major_collection_slope_counter();
    update_remark_pause_old_slope_counter();
    update_initial_pause_old_slope_counter();
    update_remark_pause_young_slope_counter();
    update_initial_pause_young_slope_counter();

    update_decide_at_full_gc_counter();
  }
}