Please Review (S): CR 6782663: Data produced by PrintGCApplicationConcurrentTime and PrintGCApplicationStoppedTime is not accurate
Vladimir Kozlov
Vladimir.Kozlov at Sun.COM
Fri Jul 10 13:53:26 PDT 2009
John,
We usually don't put bug's id as a comment,
you can get it from the changeset.
It is better to have a real comment explaining the code.
And if you have it, as in runtimeService.cpp, you don't need bug's id.
In arguments.cpp, I think, warnings should have what should be used:
warning("-XX:+PrintGCApplicationConcurrentTime is obsolete. Use -XX:+PrintApplicationExecutionTimes instead.");
Thanks,
Vladimir
john cuthbertson - Sun Microsystems wrote:
> Hi Everyone,
>
> Can I have a couple of volunteers look over the attached changes for
> this CR? The changes can be found at:
>
> http://cr.openjdk.java.net/~johnc/6782663/webrev.00/
>
> The issue here was that the code that was printing this information was
> only executed for synchronous safepoints and ignored forced safepoints.
> The user would see missing chunks of time (especially with also
> displaying GC time stamps) giving the impression that the JVM and app
> were idle. I was able to see this in the first few minutes of SPECjbb2005.
>
> The simple solution was to move the printing into the routines that
> record safepoint starts and ends, capturing guaranteed safepoints. I
> have also changed the names of the flags to more accurately describe
> that GCs are not the only things we take a safepoint for (and deprecated
> the old flag names).
>
> With these changes I see a delta between (application time + safepoint
> time) and the GC timestamp of around 0.1s instead of around 5 and 7
> seconds previously.
>
> Testing: SPECjbb2005 (exhibited behavior), IBM UK's own evaluation, and
> JPRT.
>
> Thanks,
>
> JohnC
More information about the hotspot-runtime-dev
mailing list