src/share/vm/gc/g1/concurrentG1RefineThread.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/share/vm/gc/g1/concurrentG1RefineThread.cpp	Thu Feb 11 13:39:01 2016
--- new/src/share/vm/gc/g1/concurrentG1RefineThread.cpp	Thu Feb 11 13:39:01 2016

*** 65,78 **** --- 65,78 ---- create_and_start(); } void ConcurrentG1RefineThread::initialize() { // Current thread activation threshold ! _threshold = MIN2<int>(cg1r()->thread_threshold_step() * (_worker_id + 1) + cg1r()->green_zone(), ! _threshold = MIN2<size_t>(cg1r()->thread_threshold_step() * (_worker_id + 1) + cg1r()->green_zone(), cg1r()->yellow_zone()); // A thread deactivates once the number of buffer reached a deactivation threshold ! _deactivation_threshold = MAX2<int>(_threshold - cg1r()->thread_threshold_step(), cg1r()->green_zone()); ! _deactivation_threshold = MAX2<size_t>(_threshold - cg1r()->thread_threshold_step(), cg1r()->green_zone()); } void ConcurrentG1RefineThread::wait_for_completed_buffers() { DirtyCardQueueSet& dcqs = JavaThread::dirty_card_queue_set(); MutexLockerEx x(_monitor, Mutex::_no_safepoint_check_flag);
*** 87,97 **** --- 87,97 ---- } void ConcurrentG1RefineThread::activate() { MutexLockerEx x(_monitor, Mutex::_no_safepoint_check_flag); if (!is_primary()) { ! log_debug(gc, refine)("G1-Refine-activated worker %d, on threshold %d, current %d", ! log_debug(gc, refine)("G1-Refine-activated worker %d, on threshold " SIZE_FORMAT ", current " SIZE_FORMAT, _worker_id, _threshold, JavaThread::dirty_card_queue_set().completed_buffers_num()); set_active(true); } else { DirtyCardQueueSet& dcqs = JavaThread::dirty_card_queue_set(); dcqs.set_process_completed(true);
*** 100,110 **** --- 100,110 ---- } void ConcurrentG1RefineThread::deactivate() { MutexLockerEx x(_monitor, Mutex::_no_safepoint_check_flag); if (!is_primary()) { ! log_debug(gc, refine)("G1-Refine-deactivated worker %d, off threshold %d, current %d", ! log_debug(gc, refine)("G1-Refine-deactivated worker %d, off threshold " SIZE_FORMAT ", current " SIZE_FORMAT, _worker_id, _deactivation_threshold, JavaThread::dirty_card_queue_set().completed_buffers_num()); set_active(false); } else { DirtyCardQueueSet& dcqs = JavaThread::dirty_card_queue_set(); dcqs.set_process_completed(false);
*** 133,143 **** --- 133,143 ---- { SuspendibleThreadSetJoiner sts_join; DirtyCardQueueSet& dcqs = JavaThread::dirty_card_queue_set(); do { ! int curr_buffer_num = (int)dcqs.completed_buffers_num(); ! size_t curr_buffer_num = (size_t)dcqs.completed_buffers_num(); // If the number of the buffers falls down into the yellow zone, // that means that the transition period after the evacuation pause has ended. if (dcqs.completed_queue_padding() > 0 && curr_buffer_num <= cg1r()->yellow_zone()) { dcqs.set_completed_queue_padding(0); }

src/share/vm/gc/g1/concurrentG1RefineThread.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File