< prev index next >

src/share/vm/gc_implementation/g1/g1Allocator.cpp

Print this page

        

*** 117,127 **** size_t word_sz, AllocationContext_t context) { size_t gclab_word_size = _g1h->desired_plab_sz(dest); if (word_sz * 100 < gclab_word_size * ParallelGCBufferWastePct) { G1ParGCAllocBuffer* alloc_buf = alloc_buffer(dest, context); - add_to_alloc_buffer_waste(alloc_buf->words_remaining()); alloc_buf->retire(); HeapWord* buf = _g1h->par_allocate_during_gc(dest, gclab_word_size, context); if (buf == NULL) { return NULL; // Let caller handle allocation failure. --- 117,126 ----
*** 151,160 **** void G1DefaultParGCAllocator::retire_alloc_buffers() { for (uint state = 0; state < InCSetState::Num; state++) { G1ParGCAllocBuffer* const buf = _alloc_buffers[state]; if (buf != NULL) { ! add_to_alloc_buffer_waste(buf->words_remaining()); buf->flush_and_retire_stats(_g1h->alloc_buffer_stats(state)); } } } --- 150,160 ---- void G1DefaultParGCAllocator::retire_alloc_buffers() { for (uint state = 0; state < InCSetState::Num; state++) { G1ParGCAllocBuffer* const buf = _alloc_buffers[state]; if (buf != NULL) { ! add_to_alloc_buffer_waste(buf->wasted()); ! add_to_undo_waste(buf->undo_wasted()); buf->flush_and_retire_stats(_g1h->alloc_buffer_stats(state)); } } }
< prev index next >