637 bool latin1_2 = (*entry2)->latin1();
638 guarantee(latin1_1 != latin1_2 || !equals(value1, value2), "Table entries must not have identical arrays");
639 entry2 = (*entry2)->next_addr();
640 }
641 entry1 = (*entry1)->next_addr();
642 }
643 }
644 }
645
646 void StringDedupTable::clean_entry_cache() {
647 _entry_cache->delete_overflowed();
648 }
649
650 void StringDedupTable::print_statistics() {
651 Log(gc, stringdedup) log;
652 log.debug(" Table");
653 log.debug(" Memory Usage: " STRDEDUP_BYTES_FORMAT_NS,
654 STRDEDUP_BYTES_PARAM(_table->_size * sizeof(StringDedupEntry*) + (_table->_entries + _entry_cache->size()) * sizeof(StringDedupEntry)));
655 log.debug(" Size: " SIZE_FORMAT ", Min: " SIZE_FORMAT ", Max: " SIZE_FORMAT, _table->_size, _min_size, _max_size);
656 log.debug(" Entries: " UINTX_FORMAT ", Load: " STRDEDUP_PERCENT_FORMAT_NS ", Cached: " UINTX_FORMAT ", Added: " UINTX_FORMAT ", Removed: " UINTX_FORMAT,
657 _table->_entries, percent_of(_table->_entries, _table->_size), _entry_cache->size(), _entries_added, _entries_removed);
658 log.debug(" Resize Count: " UINTX_FORMAT ", Shrink Threshold: " UINTX_FORMAT "(" STRDEDUP_PERCENT_FORMAT_NS "), Grow Threshold: " UINTX_FORMAT "(" STRDEDUP_PERCENT_FORMAT_NS ")",
659 _resize_count, _table->_shrink_threshold, _shrink_load_factor * 100.0, _table->_grow_threshold, _grow_load_factor * 100.0);
660 log.debug(" Rehash Count: " UINTX_FORMAT ", Rehash Threshold: " UINTX_FORMAT ", Hash Seed: 0x%x", _rehash_count, _rehash_threshold, _table->_hash_seed);
661 log.debug(" Age Threshold: " UINTX_FORMAT, StringDeduplicationAgeThreshold);
662 }
|
637 bool latin1_2 = (*entry2)->latin1();
638 guarantee(latin1_1 != latin1_2 || !equals(value1, value2), "Table entries must not have identical arrays");
639 entry2 = (*entry2)->next_addr();
640 }
641 entry1 = (*entry1)->next_addr();
642 }
643 }
644 }
645
646 void StringDedupTable::clean_entry_cache() {
647 _entry_cache->delete_overflowed();
648 }
649
650 void StringDedupTable::print_statistics() {
651 Log(gc, stringdedup) log;
652 log.debug(" Table");
653 log.debug(" Memory Usage: " STRDEDUP_BYTES_FORMAT_NS,
654 STRDEDUP_BYTES_PARAM(_table->_size * sizeof(StringDedupEntry*) + (_table->_entries + _entry_cache->size()) * sizeof(StringDedupEntry)));
655 log.debug(" Size: " SIZE_FORMAT ", Min: " SIZE_FORMAT ", Max: " SIZE_FORMAT, _table->_size, _min_size, _max_size);
656 log.debug(" Entries: " UINTX_FORMAT ", Load: " STRDEDUP_PERCENT_FORMAT_NS ", Cached: " UINTX_FORMAT ", Added: " UINTX_FORMAT ", Removed: " UINTX_FORMAT,
657 _table->_entries, percent_of((size_t)_table->_entries, _table->_size), _entry_cache->size(), _entries_added, _entries_removed);
658 log.debug(" Resize Count: " UINTX_FORMAT ", Shrink Threshold: " UINTX_FORMAT "(" STRDEDUP_PERCENT_FORMAT_NS "), Grow Threshold: " UINTX_FORMAT "(" STRDEDUP_PERCENT_FORMAT_NS ")",
659 _resize_count, _table->_shrink_threshold, _shrink_load_factor * 100.0, _table->_grow_threshold, _grow_load_factor * 100.0);
660 log.debug(" Rehash Count: " UINTX_FORMAT ", Rehash Threshold: " UINTX_FORMAT ", Hash Seed: 0x%x", _rehash_count, _rehash_threshold, _table->_hash_seed);
661 log.debug(" Age Threshold: " UINTX_FORMAT, StringDeduplicationAgeThreshold);
662 }
|