comparison src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp @ 10405:f2110083203d

8005849: JEP 167: Event-Based JVM Tracing Reviewed-by: acorn, coleenp, sla Contributed-by: Karen Kinnear <karen.kinnear@oracle.com>, Bengt Rutisson <bengt.rutisson@oracle.com>, Calvin Cheung <calvin.cheung@oracle.com>, Erik Gahlin <erik.gahlin@oracle.com>, Erik Helin <erik.helin@oracle.com>, Jesper Wilhelmsson <jesper.wilhelmsson@oracle.com>, Keith McGuigan <keith.mcguigan@oracle.com>, Mattias Tobiasson <mattias.tobiasson@oracle.com>, Markus Gronlund <markus.gronlund@oracle.com>, Mikael Auno <mikael.auno@oracle.com>, Nils Eliasson <nils.eliasson@oracle.com>, Nils Loodin <nils.loodin@oracle.com>, Rickard Backman <rickard.backman@oracle.com>, Staffan Larsen <staffan.larsen@oracle.com>, Stefan Karlsson <stefan.karlsson@oracle.com>, Yekaterina Kantserova <yekaterina.kantserova@oracle.com>
author sla
date Mon, 10 Jun 2013 11:30:51 +0200
parents 48391ab0687e
children 4288e54fd145
comparison
equal deleted inserted replaced
10404:d0add7016434 10405:f2110083203d
669 669
670 bool need_to_start_conc_mark(const char* source, size_t alloc_word_size = 0); 670 bool need_to_start_conc_mark(const char* source, size_t alloc_word_size = 0);
671 671
672 // Record the start and end of an evacuation pause. 672 // Record the start and end of an evacuation pause.
673 void record_collection_pause_start(double start_time_sec); 673 void record_collection_pause_start(double start_time_sec);
674 void record_collection_pause_end(double pause_time_ms); 674 void record_collection_pause_end(double pause_time_ms, EvacuationInfo& evacuation_info);
675 675
676 // Record the start and end of a full collection. 676 // Record the start and end of a full collection.
677 void record_full_collection_start(); 677 void record_full_collection_start();
678 void record_full_collection_end(); 678 void record_full_collection_end();
679 679
718 const char* false_action_str); 718 const char* false_action_str);
719 719
720 // Choose a new collection set. Marks the chosen regions as being 720 // Choose a new collection set. Marks the chosen regions as being
721 // "in_collection_set", and links them together. The head and number of 721 // "in_collection_set", and links them together. The head and number of
722 // the collection set are available via access methods. 722 // the collection set are available via access methods.
723 void finalize_cset(double target_pause_time_ms); 723 void finalize_cset(double target_pause_time_ms, EvacuationInfo& evacuation_info);
724 724
725 // The head of the list (via "next_in_collection_set()") representing the 725 // The head of the list (via "next_in_collection_set()") representing the
726 // current collection set. 726 // current collection set.
727 HeapRegion* collection_set() { return _collection_set; } 727 HeapRegion* collection_set() { return _collection_set; }
728 728
877 HeapRegion* _recorded_survivor_tail; 877 HeapRegion* _recorded_survivor_tail;
878 878
879 ageTable _survivors_age_table; 879 ageTable _survivors_age_table;
880 880
881 public: 881 public:
882 uint tenuring_threshold() const { return _tenuring_threshold; }
882 883
883 inline GCAllocPurpose 884 inline GCAllocPurpose
884 evacuation_destination(HeapRegion* src_region, uint age, size_t word_sz) { 885 evacuation_destination(HeapRegion* src_region, uint age, size_t word_sz) {
885 if (age < _tenuring_threshold && src_region->is_young()) { 886 if (age < _tenuring_threshold && src_region->is_young()) {
886 return GCAllocForSurvived; 887 return GCAllocForSurvived;