Skip to content
This repository has been archived by the owner on Sep 2, 2022. It is now read-only.
/ jdk16 Public archive

8257919: [JVMCI] profiling info didn't change after reprofile #6

Closed
wants to merge 2 commits into from
Closed

8257919: [JVMCI] profiling info didn't change after reprofile #6

wants to merge 2 commits into from

Conversation

iwanowww
Copy link
Contributor

@iwanowww iwanowww commented Dec 11, 2020

JDK-8252049 moved compiler counter initialization into MethodData constructor, but JVMCI and WhiteBox API rely on MethodData::initialize()/MethodData::init() to reset MDO state.

Proposed fix restores the logic which resets the counters in init() (which is called from initialize()).

Testing:

  • hs-precheckin-comp, hs-tier1, hs-tier2

Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • Change must be properly reviewed

Issue

  • JDK-8257919: [JVMCI] profiling info didn't change after reprofile

Reviewers

Download

$ git fetch https://git.openjdk.java.net/jdk16 pull/6/head:pull/6
$ git checkout pull/6

@bridgekeeper
Copy link

bridgekeeper bot commented Dec 11, 2020

👋 Welcome back vlivanov! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk
Copy link

openjdk bot commented Dec 11, 2020

@iwanowww The following label will be automatically applied to this pull request:

  • hotspot

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.

@openjdk openjdk bot added the hotspot label Dec 11, 2020
@iwanowww
Copy link
Contributor Author

/label remove hotspot
/label add hotspot-compiler

@openjdk openjdk bot removed the hotspot label Dec 11, 2020
@openjdk
Copy link

openjdk bot commented Dec 11, 2020

@iwanowww
The hotspot label was successfully removed.

@openjdk openjdk bot added the hotspot-compiler hotspot-compiler-dev@openjdk.java.net label Dec 11, 2020
@openjdk
Copy link

openjdk bot commented Dec 11, 2020

@iwanowww
The hotspot-compiler label was successfully added.

@iwanowww iwanowww marked this pull request as ready for review December 11, 2020 09:07
@openjdk openjdk bot added the rfr Pull request is ready for review label Dec 11, 2020
@mlbridge
Copy link

mlbridge bot commented Dec 11, 2020

Webrevs

@cl4es
Copy link
Member

cl4es commented Dec 11, 2020

I guess the compiler will outsmart the back-to-back initialization but for clarity maybe the MethodData constructor should now initialize _compiler_counters using the empty constructor?

@iwanowww
Copy link
Contributor Author

After thinking more about it, I decided to revert creation_mileage change and move it back to MethodData: it turns out WhiteBox API deliberately keeps it intact while resetting other compiler-related counters (by calling MethodData::init() which was deliberately separated from MethodData::initialize() in JDK-8007288). Now it should be back to pre-8252049 state and keeps the fix focused on native leak. The MDO/ciMD implementations can be refactored later.

@iwanowww
Copy link
Contributor Author

I guess the compiler will outsmart the back-to-back initialization but for clarity maybe the MethodData constructor should now initialize _compiler_counters using the empty constructor?

Good point. Latest commit addresses that.

Copy link

@vnkozlov vnkozlov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good. I verified locally that failed test passed.

@openjdk
Copy link

openjdk bot commented Dec 11, 2020

@iwanowww This change now passes all automated pre-integration checks.

ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details.

After integration, the commit message for the final commit will be:

8257919: [JVMCI] profiling info didn't change after reprofile

Reviewed-by: kvn, redestad

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 3 new commits pushed to the master branch:

  • b7ac32d: 8257598: Clarify what component values are used in Record::equals
  • a280182: 8258060: Update @jls tags for renamed/renumbered sections
  • bacf22b: 8256641: CDS VM operations do not lock the heap

Please see this link for an up-to-date comparison between the source branch of this pull request and the master branch.
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.

➡️ To integrate this PR with the above commit message to the master branch, type /integrate in a new comment.

@openjdk openjdk bot added the ready Pull request is ready to be integrated label Dec 11, 2020
@iwanowww
Copy link
Contributor Author

Thanks for the reviews, Vladimir and Claus.

@iwanowww
Copy link
Contributor Author

/integrate

@openjdk openjdk bot closed this Dec 11, 2020
@openjdk openjdk bot added integrated Pull request has been integrated and removed ready Pull request is ready to be integrated rfr Pull request is ready for review labels Dec 11, 2020
@openjdk
Copy link

openjdk bot commented Dec 11, 2020

@iwanowww Since your change was applied there have been 3 commits pushed to the master branch:

  • b7ac32d: 8257598: Clarify what component values are used in Record::equals
  • a280182: 8258060: Update @jls tags for renamed/renumbered sections
  • bacf22b: 8256641: CDS VM operations do not lock the heap

Your commit was automatically rebased without conflicts.

Pushed as commit b1afed7.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

@iwanowww iwanowww deleted the 8257919.jvmci.reprofiling branch December 11, 2020 21:51
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
hotspot-compiler hotspot-compiler-dev@openjdk.java.net integrated Pull request has been integrated
Development

Successfully merging this pull request may close these issues.

3 participants