-
Notifications
You must be signed in to change notification settings - Fork 937
Fully use VM stack walker when selected & general enhancements for VM/VMX modes #1370
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
Fully use VM stack walker when selected & general enhancements for VM/VMX modes #1370
Conversation
… VMX stack walkers for frame skipping
src/stackWalker.cpp
Outdated
| // Skip any frames above profiler hook methods | ||
| depth = 0; | ||
| fillFrame(frames[depth++], BCI_NATIVE_FRAME, method_name); | ||
| } else if (mark == MARK_COMPILER_ENTRY && Profiler::instance()->features().comp_task) { |
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.
If mark == MARK_COMPILER_ENTRY and Profiler::instance()->features().comp_task is false, you are going to fall into the else statement and treat the frame as a normal native frame. Is that intended?
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.
yes that's intended
|
while doing some testing on VM/VMX across multiple systems I've found that some crashes may happen for synchronous events such as ALLOC & MALLOC, This should be fixed before proceeding with this change I will create a separate issue & change the PR to draft in the meantime |
# Conflicts: # test/test/instrument/InstrumentTests.java
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.
Clang-Tidy found issue(s) with the introduced code (1/1)
Could you split the enhancements into a new PR, to reduce the size of it? Also, the images in the PR description produce HTTP 404 when clicked. |
The PR is relatively small |
|
Closing this PR as #1537 handles most of what's needed Need to create a new change to move alloc profiling to use VM Also I do remember having a discussion about moving method trace samples to it as well #1421 (comment) @apangin correct me if I'm wrong about the method trace |
Description
In this PR, I move the stack unwinding to fully use VM stack walking mode when selected
Previously it would have different handling depending on which event was being profiled
Furthermore this PR includes multiple enhancements on the VM/VMX stackwalking modes which include
comptaskframesVM/VMX samples comparison (Before vs After)
LOCK


ALLOC


Malloc


Comp Task (is Missing in current VM/VMX)


Related issues
#1369
Motivation and context
Fully expose the VM/VMX stack walkers when selected by the user
How has this been tested?
multiple new tests have been added, these tests fails without the changes & pass with them
make testBy submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.