72 float inter_sweep_current, float inter_sweep_estimate, 73 float intra__sweep_current) = 0; 74 virtual void end_sweep_dict_census(double splitSurplusPercent) = 0; 75 virtual Chunk* find_largest_dict() const = 0; 76 // verify that the given chunk is in the dictionary. 77 virtual bool verify_chunk_in_free_list(Chunk* tc) const = 0; 78 79 // Sigma_{all_free_blocks} (block_size^2) 80 virtual double sum_of_squared_block_sizes() const = 0; 81 82 virtual Chunk* find_chunk_ends_at(HeapWord* target) const = 0; 83 virtual void inc_total_size(size_t v) = 0; 84 virtual void dec_total_size(size_t v) = 0; 85 86 NOT_PRODUCT ( 87 virtual size_t sum_dict_returned_bytes() = 0; 88 virtual void initialize_dict_returned_bytes() = 0; 89 virtual size_t total_count() = 0; 90 ) 91 92 virtual void report_statistics() const { 93 gclog_or_tty->print("No statistics available"); 94 } 95 96 virtual void print_dict_census() const = 0; 97 virtual void print_free_lists(outputStream* st) const = 0; 98 99 virtual void verify() const = 0; 100 101 Mutex* par_lock() const PRODUCT_RETURN0; 102 void set_par_lock(Mutex* lock) PRODUCT_RETURN; 103 void verify_par_locked() const PRODUCT_RETURN; 104 }; 105 106 #endif // SHARE_VM_MEMORY_FREEBLOCKDICTIONARY_HPP | 72 float inter_sweep_current, float inter_sweep_estimate, 73 float intra__sweep_current) = 0; 74 virtual void end_sweep_dict_census(double splitSurplusPercent) = 0; 75 virtual Chunk* find_largest_dict() const = 0; 76 // verify that the given chunk is in the dictionary. 77 virtual bool verify_chunk_in_free_list(Chunk* tc) const = 0; 78 79 // Sigma_{all_free_blocks} (block_size^2) 80 virtual double sum_of_squared_block_sizes() const = 0; 81 82 virtual Chunk* find_chunk_ends_at(HeapWord* target) const = 0; 83 virtual void inc_total_size(size_t v) = 0; 84 virtual void dec_total_size(size_t v) = 0; 85 86 NOT_PRODUCT ( 87 virtual size_t sum_dict_returned_bytes() = 0; 88 virtual void initialize_dict_returned_bytes() = 0; 89 virtual size_t total_count() = 0; 90 ) 91 92 virtual void report_statistics(outputStream* st) const { 93 st->print_cr("No statistics available"); 94 } 95 96 virtual void print_dict_census(outputStream* st) const = 0; 97 virtual void print_free_lists(outputStream* st) const = 0; 98 99 virtual void verify() const = 0; 100 101 Mutex* par_lock() const PRODUCT_RETURN0; 102 void set_par_lock(Mutex* lock) PRODUCT_RETURN; 103 void verify_par_locked() const PRODUCT_RETURN; 104 }; 105 106 #endif // SHARE_VM_MEMORY_FREEBLOCKDICTIONARY_HPP |