< prev index next >
src/share/vm/gc/cms/compactibleFreeListSpace.cpp
Print this page
*** 2372,2389 ****
}
#endif
void CompactibleFreeListSpace::printFLCensus(size_t sweep_count) const {
assert_lock_strong(&_freelistLock);
! Log(gc, freelist, census) log;
! if (!log.is_debug()) {
return;
}
AdaptiveFreeList<FreeChunk> total;
! log.debug("end sweep# " SIZE_FORMAT, sweep_count);
ResourceMark rm;
! outputStream* out = log.debug_stream();
AdaptiveFreeList<FreeChunk>::print_labels_on(out, "size");
size_t total_free = 0;
for (size_t i = IndexSetStart; i < IndexSetSize; i += IndexSetStride) {
const AdaptiveFreeList<FreeChunk> *fl = &_indexedFreeList[i];
total_free += fl->count() * fl->size();
--- 2372,2389 ----
}
#endif
void CompactibleFreeListSpace::printFLCensus(size_t sweep_count) const {
assert_lock_strong(&_freelistLock);
! LogTarget(Debug, gc, freelist, census) log;
! if (!log.is_enabled()) {
return;
}
AdaptiveFreeList<FreeChunk> total;
! log.print("end sweep# " SIZE_FORMAT, sweep_count);
ResourceMark rm;
! outputStream* out = log.stream();
AdaptiveFreeList<FreeChunk>::print_labels_on(out, "size");
size_t total_free = 0;
for (size_t i = IndexSetStart; i < IndexSetSize; i += IndexSetStride) {
const AdaptiveFreeList<FreeChunk> *fl = &_indexedFreeList[i];
total_free += fl->count() * fl->size();
*** 2401,2412 ****
total.set_coal_deaths( total.coal_deaths() + fl->coal_deaths() );
total.set_split_births(total.split_births() + fl->split_births());
total.set_split_deaths(total.split_deaths() + fl->split_deaths());
}
total.print_on(out, "TOTAL");
! log.debug("Total free in indexed lists " SIZE_FORMAT " words", total_free);
! log.debug("growth: %8.5f deficit: %8.5f",
(double)(total.split_births()+total.coal_births()-total.split_deaths()-total.coal_deaths())/
(total.prev_sweep() != 0 ? (double)total.prev_sweep() : 1.0),
(double)(total.desired() - total.count())/(total.desired() != 0 ? (double)total.desired() : 1.0));
_dictionary->print_dict_census(out);
}
--- 2401,2412 ----
total.set_coal_deaths( total.coal_deaths() + fl->coal_deaths() );
total.set_split_births(total.split_births() + fl->split_births());
total.set_split_deaths(total.split_deaths() + fl->split_deaths());
}
total.print_on(out, "TOTAL");
! log.print("Total free in indexed lists " SIZE_FORMAT " words", total_free);
! log.print("growth: %8.5f deficit: %8.5f",
(double)(total.split_births()+total.coal_births()-total.split_deaths()-total.coal_deaths())/
(total.prev_sweep() != 0 ? (double)total.prev_sweep() : 1.0),
(double)(total.desired() - total.count())/(total.desired() != 0 ? (double)total.desired() : 1.0));
_dictionary->print_dict_census(out);
}
< prev index next >