2639 // book-keeping stats |
2639 // book-keeping stats |
2640 void CFLS_LAB::get_from_global_pool(size_t word_sz, AdaptiveFreeList<FreeChunk>* fl) { |
2640 void CFLS_LAB::get_from_global_pool(size_t word_sz, AdaptiveFreeList<FreeChunk>* fl) { |
2641 // Get the #blocks we want to claim |
2641 // Get the #blocks we want to claim |
2642 size_t n_blks = (size_t)_blocks_to_claim[word_sz].average(); |
2642 size_t n_blks = (size_t)_blocks_to_claim[word_sz].average(); |
2643 assert(n_blks > 0, "Error"); |
2643 assert(n_blks > 0, "Error"); |
2644 assert(ResizePLAB || n_blks == OldPLABSize, "Error"); |
2644 assert(ResizeOldPLAB || n_blks == OldPLABSize, "Error"); |
2645 // In some cases, when the application has a phase change, |
2645 // In some cases, when the application has a phase change, |
2646 // there may be a sudden and sharp shift in the object survival |
2646 // there may be a sudden and sharp shift in the object survival |
2647 // profile, and updating the counts at the end of a scavenge |
2647 // profile, and updating the counts at the end of a scavenge |
2648 // may not be quick enough, giving rise to large scavenge pauses |
2648 // may not be quick enough, giving rise to large scavenge pauses |
2649 // during these phase changes. It is beneficial to detect such |
2649 // during these phase changes. It is beneficial to detect such |