< prev index next >
src/hotspot/share/gc/parallel/psParallelCompact.cpp
Print this page
rev 60421 : [mq]: 8248401-stefank-review
@@ -841,11 +841,10 @@
STWGCTimer PSParallelCompact::_gc_timer;
ParallelOldTracer PSParallelCompact::_gc_tracer;
elapsedTimer PSParallelCompact::_accumulated_time;
unsigned int PSParallelCompact::_total_invocations = 0;
unsigned int PSParallelCompact::_maximum_compaction_gc_num = 0;
-jlong PSParallelCompact::_time_of_last_gc = 0;
CollectorCounters* PSParallelCompact::_counters = NULL;
ParMarkBitMap PSParallelCompact::_mark_bitmap;
ParallelCompactData PSParallelCompact::_summary_data;
PSParallelCompact::IsAliveClosure PSParallelCompact::_is_alive_closure;
@@ -1043,10 +1042,12 @@
// Update heap occupancy information which is used as input to the soft ref
// clearing policy at the next gc.
Universe::update_heap_info_at_gc();
+ Universe::heap()->next_whole_heap_examined();
+
bool young_gen_empty = eden_empty && from_space->is_empty() &&
to_space->is_empty();
PSCardTable* ct = heap->card_table();
MemRegion old_mr = heap->old_gen()->reserved();
@@ -1067,13 +1068,10 @@
#endif
if (ZapUnusedHeapArea) {
heap->gen_mangle_unused_area();
}
-
- // Update time of last GC
- reset_millis_since_last_gc();
}
HeapWord*
PSParallelCompact::compute_dense_prefix_via_density(const SpaceId id,
bool maximum_compaction)
@@ -3195,29 +3193,10 @@
return;
}
}
}
-jlong PSParallelCompact::millis_since_last_gc() {
- // We need a monotonically non-decreasing time in ms but
- // os::javaTimeMillis() does not guarantee monotonicity.
- jlong now = os::javaTimeNanos() / NANOSECS_PER_MILLISEC;
- jlong ret_val = now - _time_of_last_gc;
- // XXX See note in genCollectedHeap::millis_since_last_gc().
- if (ret_val < 0) {
- NOT_PRODUCT(log_warning(gc)("time warp: " JLONG_FORMAT, ret_val);)
- return 0;
- }
- return ret_val;
-}
-
-void PSParallelCompact::reset_millis_since_last_gc() {
- // We need a monotonically non-decreasing time in ms but
- // os::javaTimeMillis() does not guarantee monotonicity.
- _time_of_last_gc = os::javaTimeNanos() / NANOSECS_PER_MILLISEC;
-}
-
ParMarkBitMap::IterationStatus MoveAndUpdateClosure::copy_until_full()
{
if (source() != copy_destination()) {
DEBUG_ONLY(PSParallelCompact::check_new_location(source(), destination());)
Copy::aligned_conjoint_words(source(), copy_destination(), words_remaining());
< prev index next >