-
Notifications
You must be signed in to change notification settings - Fork 12
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
Enhancement #22
Enhancement #22
Conversation
That's quite a lot of changes. |
1, the reader use binary.Read to get int and string, let the memory escape to heap. each commit is independent, if you think this pr is too large, you could review commit one by one. |
Thanks a lot for an explanation and for the PR Could you please also add benchmark results to the PR description, if possible using benchstat |
already add benchmark. |
more detailed benchstat.
2,
3,
4,
5,
6
7
8, 9
|
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.
Awesome work! Huge improvements! Thanks a lot, I love it.
I left a bunch of comments but most are nitpicking.
Except the one about getPointerToStackFrames
, this is the only thing we need to fix/clarify to merge the PR.
Would you like to add more jfr files for benchmarking/testing? |
i add a jfr file of async-profiler 2.10 output, a typical usage in my company:
|
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.
Let's resolve conflicts and address #22 (comment)
# Conflicts: # parser/event_types.go
Code looks good now. |
@korniltsev do not forget it |
Great Job! Thanks! |
reduce 99% memory allocation and save 55% cpu.
go version:
benchstat: