--- a/hotspot/src/share/vm/gc/g1/g1CollectorPolicy.hpp Thu Oct 22 17:24:17 2015 +0000
+++ b/hotspot/src/share/vm/gc/g1/g1CollectorPolicy.hpp Tue Oct 20 14:37:59 2015 +0200
@@ -465,12 +465,16 @@
double _mark_remark_start_sec;
double _mark_cleanup_start_sec;
+ void update_young_list_max_and_target_length();
+ void update_young_list_max_and_target_length(size_t rs_lengths);
+
// Update the young list target length either by setting it to the
// desired fixed value or by calculating it using G1's pause
// prediction model. If no rs_lengths parameter is passed, predict
// the RS lengths using the prediction model, otherwise use the
// given rs_lengths as the prediction.
- void update_young_list_target_length(size_t rs_lengths = (size_t) -1);
+ void update_young_list_target_length();
+ void update_young_list_target_length(size_t rs_lengths);
// Calculate and return the minimum desired young list target
// length. This is the minimum desired young list length according
@@ -493,6 +497,11 @@
uint desired_min_length,
uint desired_max_length) const;
+ uint bounded_young_list_target_length(size_t rs_lengths) const;
+
+ void update_rs_lengths_prediction();
+ void update_rs_lengths_prediction(size_t prediction);
+
// Calculate and return chunk size (in number of regions) for parallel
// concurrent mark cleanup.
uint calculate_parallel_work_chunk_size(uint n_workers, uint n_regions) const;