New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
8277814: ConcurrentRefineThread should report rate when deactivating #6550
Conversation
|
@kimbarrett The following label will be automatically applied to this pull request:
When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label pull request command. |
Webrevs
|
double G1ConcurrentRefineStats::refinement_rate_ms() const { | ||
// Report 0 when no time recorded because no refinement performed. | ||
double secs = refinement_time().seconds(); | ||
return (secs > 0) ? (refined_cards() / (secs * MILLIUNITS)) : 0.0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure how this is used, but in similar calculations we only use and return a value if the elapsed time is large enough (something like a microsecond or so) to remove extreme outliers. Not sure if that is needed here too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This change only uses it for logging. I could just drop this function and do the equivalent calculation at the point where it's used. I don't think a made up lower limit really makes that much sense anyway; I remember some places like you describe, but I thought many had been eliminated. I could only find a couple. The expectation here is that refined_cards() is probably also zero, unless the time granularity is rather coarse.
@kimbarrett This change now passes all automated pre-integration checks. After integration, the commit message for the final commit will be:
You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been no new commits pushed to the
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good.
/integrate |
Going to push as commit dd73e3c. |
@kimbarrett Pushed as commit dd73e3c. |
Please review this change to the logging by concurrent refinement threads.
This change adds the cards processed per ms to the deactivation log message.
Testing:
mach5 tier1
locally ran a test with gc+refine=debug logging enabled and verified the
expected change to the deactivation log message.
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk pull/6550/head:pull/6550
$ git checkout pull/6550
Update a local copy of the PR:
$ git checkout pull/6550
$ git pull https://git.openjdk.java.net/jdk pull/6550/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 6550
View PR using the GUI difftool:
$ git pr show -t 6550
Using diff file
Download this PR as a diff file:
https://git.openjdk.java.net/jdk/pull/6550.diff