< prev index next >

src/hotspot/share/gc/z/zRelocationSetSelector.cpp

Print this page

        

*** 101,110 **** --- 101,111 ---- // a candidate relocation set and calculate the maximum space requirement for // their live objects. const size_t npages = _registered_pages.size(); size_t selected_from = 0; size_t selected_to = 0; + size_t selected_from_size = 0; size_t from_size = 0; semi_sort(); for (size_t from = 1; from <= npages; from++) {
*** 125,134 **** --- 126,136 ---- const size_t diff_to = to - selected_to; const double diff_reclaimable = 100 - percent_of(diff_to, diff_from); if (diff_reclaimable > ZFragmentationLimit) { selected_from = from; selected_to = to; + selected_from_size = from_size; } log_trace(gc, reloc)("Candidate Relocation Set (%s Pages): " SIZE_FORMAT "->" SIZE_FORMAT ", %.1f%% relative defragmentation, %s", _name, from, to, diff_reclaimable, (selected_from == from) ? "Selected" : "Rejected");
*** 136,146 **** // Finalize selection _nselected = selected_from; // Update statistics ! _relocating = from_size; for (size_t i = _nselected; i < npages; i++) { ZPage* const page = _sorted_pages[i]; _fragmentation += page->size() - page->live_bytes(); } --- 138,148 ---- // Finalize selection _nselected = selected_from; // Update statistics ! _relocating = selected_from_size; for (size_t i = _nselected; i < npages; i++) { ZPage* const page = _sorted_pages[i]; _fragmentation += page->size() - page->live_bytes(); }
< prev index next >