1 /* |
1 /* |
2 * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
99 void report_concurrent_mark_remark_times_ms(double ms); |
99 void report_concurrent_mark_remark_times_ms(double ms); |
100 void report_concurrent_mark_cleanup_times_ms(double ms); |
100 void report_concurrent_mark_cleanup_times_ms(double ms); |
101 void report_alloc_rate_ms(double alloc_rate); |
101 void report_alloc_rate_ms(double alloc_rate); |
102 void report_cost_per_card_ms(double cost_per_card_ms); |
102 void report_cost_per_card_ms(double cost_per_card_ms); |
103 void report_cost_scan_hcc(double cost_scan_hcc); |
103 void report_cost_scan_hcc(double cost_scan_hcc); |
104 void report_cost_per_entry_ms(double cost_per_entry_ms, bool last_gc_was_young); |
104 void report_cost_per_entry_ms(double cost_per_entry_ms, bool for_young_gc); |
105 void report_cards_per_entry_ratio(double cards_per_entry_ratio, bool last_gc_was_young); |
105 void report_cards_per_entry_ratio(double cards_per_entry_ratio, bool for_young_gc); |
106 void report_rs_length_diff(double rs_length_diff); |
106 void report_rs_length_diff(double rs_length_diff); |
107 void report_cost_per_byte_ms(double cost_per_byte_ms, bool in_marking_window); |
107 void report_cost_per_byte_ms(double cost_per_byte_ms, bool mark_or_rebuild_in_progress); |
108 void report_young_other_cost_per_region_ms(double other_cost_per_region_ms); |
108 void report_young_other_cost_per_region_ms(double other_cost_per_region_ms); |
109 void report_non_young_other_cost_per_region_ms(double other_cost_per_region_ms); |
109 void report_non_young_other_cost_per_region_ms(double other_cost_per_region_ms); |
110 void report_constant_other_time_ms(double constant_other_time_ms); |
110 void report_constant_other_time_ms(double constant_other_time_ms); |
111 void report_pending_cards(double pending_cards); |
111 void report_pending_cards(double pending_cards); |
112 void report_rs_lengths(double rs_lengths); |
112 void report_rs_lengths(double rs_lengths); |
124 |
124 |
125 double predict_young_cards_per_entry_ratio() const; |
125 double predict_young_cards_per_entry_ratio() const; |
126 |
126 |
127 double predict_mixed_cards_per_entry_ratio() const; |
127 double predict_mixed_cards_per_entry_ratio() const; |
128 |
128 |
129 size_t predict_card_num(size_t rs_length, bool gcs_are_young) const; |
129 size_t predict_card_num(size_t rs_length, bool for_young_gc) const; |
130 |
130 |
131 double predict_rs_scan_time_ms(size_t card_num, bool gcs_are_young) const; |
131 double predict_rs_scan_time_ms(size_t card_num, bool for_young_gc) const; |
132 |
132 |
133 double predict_mixed_rs_scan_time_ms(size_t card_num) const; |
133 double predict_mixed_rs_scan_time_ms(size_t card_num) const; |
134 |
134 |
135 double predict_object_copy_time_ms_during_cm(size_t bytes_to_copy) const; |
135 double predict_object_copy_time_ms_during_cm(size_t bytes_to_copy) const; |
136 |
136 |