6782663: Data produced by PrintGCApplicationConcurrentTime and PrintGCApplicationStoppedTime is not accurate
Update and display the timers associated with these flags for all safepoints. Reviewed-by: ysr, jcoomes
This commit is contained in:
parent
a88853347f
commit
0356567ed8
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1998-2009 Sun Microsystems, Inc. All Rights Reserved.
|
||||
* Copyright 1998-2010 Sun Microsystems, Inc. All Rights Reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -426,11 +426,6 @@ void VMThread::loop() {
|
||||
// follow that also require a safepoint
|
||||
if (_cur_vm_operation->evaluate_at_safepoint()) {
|
||||
|
||||
if (PrintGCApplicationConcurrentTime) {
|
||||
gclog_or_tty->print_cr("Application time: %3.7f seconds",
|
||||
RuntimeService::last_application_time_sec());
|
||||
}
|
||||
|
||||
_vm_queue->set_drain_list(safepoint_ops); // ensure ops can be scanned
|
||||
|
||||
SafepointSynchronize::begin();
|
||||
@ -477,12 +472,6 @@ void VMThread::loop() {
|
||||
// Complete safepoint synchronization
|
||||
SafepointSynchronize::end();
|
||||
|
||||
if (PrintGCApplicationStoppedTime) {
|
||||
gclog_or_tty->print_cr("Total time for which application threads "
|
||||
"were stopped: %3.7f seconds",
|
||||
RuntimeService::last_safepoint_time_sec());
|
||||
}
|
||||
|
||||
} else { // not a safepoint operation
|
||||
if (TraceLongCompiles) {
|
||||
elapsedTimer t;
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2003-2006 Sun Microsystems, Inc. All Rights Reserved.
|
||||
* Copyright 2003-2010 Sun Microsystems, Inc. All Rights Reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
@ -104,6 +104,13 @@ void RuntimeService::init() {
|
||||
|
||||
void RuntimeService::record_safepoint_begin() {
|
||||
HS_DTRACE_PROBE(hs_private, safepoint__begin);
|
||||
|
||||
// Print the time interval in which the app was executing
|
||||
if (PrintGCApplicationConcurrentTime) {
|
||||
gclog_or_tty->print_cr("Application time: %3.7f seconds",
|
||||
last_application_time_sec());
|
||||
}
|
||||
|
||||
// update the time stamp to begin recording safepoint time
|
||||
_safepoint_timer.update();
|
||||
if (UsePerfData) {
|
||||
@ -122,6 +129,15 @@ void RuntimeService::record_safepoint_synchronized() {
|
||||
|
||||
void RuntimeService::record_safepoint_end() {
|
||||
HS_DTRACE_PROBE(hs_private, safepoint__end);
|
||||
|
||||
// Print the time interval for which the app was stopped
|
||||
// during the current safepoint operation.
|
||||
if (PrintGCApplicationStoppedTime) {
|
||||
gclog_or_tty->print_cr("Total time for which application threads "
|
||||
"were stopped: %3.7f seconds",
|
||||
last_safepoint_time_sec());
|
||||
}
|
||||
|
||||
// update the time stamp to begin recording app time
|
||||
_app_timer.update();
|
||||
if (UsePerfData) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user