Skip to content

Support for heap dumps triggered by the VM #199

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

Open
erik-brangs opened this issue Dec 30, 2020 · 3 comments
Open

Support for heap dumps triggered by the VM #199

erik-brangs opened this issue Dec 30, 2020 · 3 comments
Labels
A-heap Area: Heap (including Mmapper, VMMap) A-interface Area: Interface/API C-feature Category: Feature F-project Call For Participation: Student projects. These issues are available student projects. P-normal Priority: Normal.

Comments

@erik-brangs
Copy link

Production JVMs like HotSpot or OpenJ9 provide the possibility to trigger heap dumps. Those dumps can then be analyzed with tools like the Eclipse Memory Analyzer.

The old Java implementation of MMTk didn't provide explicit support for heap dumps.

Will the new MMTk provide the ability to do heap dumps (possibly in the far future)? This would probably require traversing the whole heap and calling VM-specific code to handle each object. It might also be helpful to be able to free up as much memory as possible before the dump in order to reduce the size of the dump. Additionally, it is generally necessary to enumerate all the roots: heap dump parsers might do their own garbage collection pass and remove objects if a root is missing.

I looked at the documentation for the VM-to-MMTk interface and did not find any indications that this is currently supported.

@qinsoon
Copy link
Member

qinsoon commented Jan 2, 2021

Hi @erik-brangs Thanks for the issue. Yes, we will need to support heap dumping. Probably we will support heap dumps by transitive closure and linear scan. However, we don't have a detailed plan yet. Any suggestion or requirement would be helpful.

@qinsoon qinsoon added A-heap Area: Heap (including Mmapper, VMMap) A-interface Area: Interface/API C-feature Category: Feature labels Jan 2, 2021
@steveblackburn steveblackburn added the F-project Call For Participation: Student projects. These issues are available student projects. label Feb 22, 2021
@qinsoon
Copy link
Member

qinsoon commented Jan 3, 2024

Related issue: #803

@qinsoon qinsoon added the P-normal Priority: Normal. label Jan 3, 2024
@wks
Copy link
Collaborator

wks commented Jan 3, 2024

Also related to #795

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-heap Area: Heap (including Mmapper, VMMap) A-interface Area: Interface/API C-feature Category: Feature F-project Call For Participation: Student projects. These issues are available student projects. P-normal Priority: Normal.
Projects
None yet
Development

No branches or pull requests

4 participants