8138750: Remove dead code in survivor rate group

Reviewed-by: mgerdin, tbenson
This commit is contained in:
Thomas Schatzl 2015-10-15 10:13:08 +02:00
parent 55988baae2
commit f292ac2dc2
4 changed files with 11 additions and 34 deletions

View File

@ -343,11 +343,15 @@ public:
double predict_survivor_regions_evac_time() const; double predict_survivor_regions_evac_time() const;
bool should_update_surv_rate_group_predictors() {
return collector_state()->last_young_gc() && !collector_state()->in_marking_window();
}
void cset_regions_freed() { void cset_regions_freed() {
bool propagate = collector_state()->should_propagate(); bool update = should_update_surv_rate_group_predictors();
_short_lived_surv_rate_group->all_surviving_words_recorded(propagate);
_survivor_surv_rate_group->all_surviving_words_recorded(propagate); _short_lived_surv_rate_group->all_surviving_words_recorded(update);
// also call it on any more surv rate groups _survivor_surv_rate_group->all_surviving_words_recorded(update);
} }
G1MMUTracker* mmu_tracker() { G1MMUTracker* mmu_tracker() {

View File

@ -121,10 +121,6 @@ class G1CollectorState VALUE_OBJ_CLASS_SPEC {
return (_in_marking_window && !_in_marking_window_im); return (_in_marking_window && !_in_marking_window_im);
} }
bool should_propagate() const { // XXX should have a more suitable state name or abstraction for this
return (_last_young_gc && !_in_marking_window);
}
G1YCType yc_type() const { G1YCType yc_type() const {
if (during_initial_mark_pause()) { if (during_initial_mark_pause()) {
return InitialMark; return InitialMark;

View File

@ -59,7 +59,6 @@ double SurvRateGroup::get_new_prediction(TruncatedSeq const* seq) const {
void SurvRateGroup::reset() { void SurvRateGroup::reset() {
_all_regions_allocated = 0; _all_regions_allocated = 0;
_setup_seq_num = 0; _setup_seq_num = 0;
_accum_surv_rate = 0.0;
_last_pred = 0.0; _last_pred = 0.0;
// the following will set up the arrays with length 1 // the following will set up the arrays with length 1
_region_num = 1; _region_num = 1;
@ -83,7 +82,6 @@ void SurvRateGroup::reset() {
void SurvRateGroup::start_adding_regions() { void SurvRateGroup::start_adding_regions() {
_setup_seq_num = _stats_arrays_length; _setup_seq_num = _stats_arrays_length;
_region_num = 0; _region_num = 0;
_accum_surv_rate = 0.0;
} }
void SurvRateGroup::stop_adding_regions() { void SurvRateGroup::stop_adding_regions() {
@ -121,25 +119,7 @@ void SurvRateGroup::stop_adding_regions() {
} }
} }
double SurvRateGroup::accum_surv_rate(size_t adjustment) {
// we might relax this one in the future...
guarantee( adjustment == 0 || adjustment == 1, "pre-condition" );
double ret = _accum_surv_rate;
if (adjustment > 0) {
TruncatedSeq* seq = get_seq(_region_num+1);
double surv_rate = get_new_prediction(seq);
ret += surv_rate;
}
return ret;
}
int SurvRateGroup::next_age_index() { int SurvRateGroup::next_age_index() {
TruncatedSeq* seq = get_seq(_region_num);
double surv_rate = get_new_prediction(seq);
_accum_surv_rate += surv_rate;
++_region_num; ++_region_num;
return (int) ++_all_regions_allocated; return (int) ++_all_regions_allocated;
} }
@ -160,8 +140,8 @@ void SurvRateGroup::record_surviving_words(int age_in_group, size_t surv_words)
} }
} }
void SurvRateGroup::all_surviving_words_recorded(bool propagate) { void SurvRateGroup::all_surviving_words_recorded(bool update_predictors) {
if (propagate && _region_num > 0) { // conservative if (update_predictors && _region_num > 0) { // conservative
double surv_rate = _surv_rate_pred[_region_num-1]->last(); double surv_rate = _surv_rate_pred[_region_num-1]->last();
for (size_t i = _region_num; i < _stats_arrays_length; ++i) { for (size_t i = _region_num; i < _stats_arrays_length; ++i) {
guarantee( _surv_rate[i] <= 0.00001, guarantee( _surv_rate[i] <= 0.00001,

View File

@ -41,7 +41,6 @@ private:
double* _surv_rate; double* _surv_rate;
double* _accum_surv_rate_pred; double* _accum_surv_rate_pred;
double _last_pred; double _last_pred;
double _accum_surv_rate;
TruncatedSeq** _surv_rate_pred; TruncatedSeq** _surv_rate_pred;
NumberSeq** _summary_surv_rates; NumberSeq** _summary_surv_rates;
size_t _summary_surv_rates_len; size_t _summary_surv_rates_len;
@ -59,7 +58,7 @@ public:
void start_adding_regions(); void start_adding_regions();
void stop_adding_regions(); void stop_adding_regions();
void record_surviving_words(int age_in_group, size_t surv_words); void record_surviving_words(int age_in_group, size_t surv_words);
void all_surviving_words_recorded(bool propagate); void all_surviving_words_recorded(bool update_predictors);
const char* name() { return _name; } const char* name() { return _name; }
size_t region_num() { return _region_num; } size_t region_num() { return _region_num; }
@ -73,8 +72,6 @@ public:
} }
} }
double accum_surv_rate(size_t adjustment);
TruncatedSeq* get_seq(size_t age) const { TruncatedSeq* get_seq(size_t age) const {
if (age >= _setup_seq_num) { if (age >= _setup_seq_num) {
guarantee( _setup_seq_num > 0, "invariant" ); guarantee( _setup_seq_num > 0, "invariant" );