454 PauseKind young_gc_pause_kind() const;
455 // Record the given STW pause with the given start and end times (in s).
456 void record_pause(PauseKind kind, double start, double end);
457 // Indicate that we aborted marking before doing any mixed GCs.
458 void abort_time_to_mixed_tracking();
459 public:
460
461 G1CollectorPolicy();
462
463 virtual ~G1CollectorPolicy();
464
465 virtual G1CollectorPolicy* as_g1_policy() { return this; }
466
467 G1CollectorState* collector_state() const;
468
469 G1GCPhaseTimes* phase_times() const { return _phase_times; }
470
471 // Check the current value of the young list RSet lengths and
472 // compare it against the last prediction. If the current value is
473 // higher, recalculate the young list target length prediction.
474 void revise_young_list_target_length_if_necessary();
475
476 // This should be called after the heap is resized.
477 void record_new_heap_size(uint new_number_of_regions);
478
479 void init();
480
481 virtual void note_gc_start(uint num_active_workers);
482
483 // Create jstat counters for the policy.
484 virtual void initialize_gc_policy_counters();
485
486 bool need_to_start_conc_mark(const char* source, size_t alloc_word_size = 0);
487
488 bool about_to_start_mixed_phase() const;
489
490 // Record the start and end of an evacuation pause.
491 void record_collection_pause_start(double start_time_sec);
492 void record_collection_pause_end(double pause_time_ms, size_t cards_scanned, size_t heap_used_bytes_before_gc);
493
494 // Record the start and end of a full collection.
|
454 PauseKind young_gc_pause_kind() const;
455 // Record the given STW pause with the given start and end times (in s).
456 void record_pause(PauseKind kind, double start, double end);
457 // Indicate that we aborted marking before doing any mixed GCs.
458 void abort_time_to_mixed_tracking();
459 public:
460
461 G1CollectorPolicy();
462
463 virtual ~G1CollectorPolicy();
464
465 virtual G1CollectorPolicy* as_g1_policy() { return this; }
466
467 G1CollectorState* collector_state() const;
468
469 G1GCPhaseTimes* phase_times() const { return _phase_times; }
470
471 // Check the current value of the young list RSet lengths and
472 // compare it against the last prediction. If the current value is
473 // higher, recalculate the young list target length prediction.
474 void revise_young_list_target_length_if_necessary(size_t rs_lengths);
475
476 // This should be called after the heap is resized.
477 void record_new_heap_size(uint new_number_of_regions);
478
479 void init();
480
481 virtual void note_gc_start(uint num_active_workers);
482
483 // Create jstat counters for the policy.
484 virtual void initialize_gc_policy_counters();
485
486 bool need_to_start_conc_mark(const char* source, size_t alloc_word_size = 0);
487
488 bool about_to_start_mixed_phase() const;
489
490 // Record the start and end of an evacuation pause.
491 void record_collection_pause_start(double start_time_sec);
492 void record_collection_pause_end(double pause_time_ms, size_t cards_scanned, size_t heap_used_bytes_before_gc);
493
494 // Record the start and end of a full collection.
|