-
Notifications
You must be signed in to change notification settings - Fork 812
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
About alloc engine throttling mechanism #826
Comments
With jfrsync and an appropriate profile, do you pick up the new sampling algorithm? For html and collapsed output, overhead should be less of a problem, since individual sample events are not stored.
…
hi,
async-profiler's alloc engine uses intervals to reduce the number of events and reduce overhead.
For many applications, interval=256k or 512k is good enough, but for many applications with large memory throughput, it may not be appropriate and cannot well control the upper limit of the number of events and overhead.
JFR provides a [throttling mechanism] (https://bugs.openjdk.org/browse/JDK-8257602) in JDK16, which can limit the number of events per unit time and try to ensure that it is statistically representative.
I wonder if I can add such feature to async-profiler?
—
Reply to this email directly, view it on GitHub <#826>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAJU73MKSURK2PZACUJLQ5LX7654NAVCNFSM6AAAAAA6FLYAASVHI2DSMVQWIX3LMV43ASLTON2WKOZRHE2DSNJTHA4TEMQ>.
You are receiving this because you are subscribed to this thread.Message ID: ***@***.***>
|
hi, Peter For JDK 16 and above,
|
I agree the default value is apparently too low, although it matches the default interval for JVM TI SampledObjectAlloc event. I'd likely accept an alternative mechanism if it's simple enough and provides quality results. The throttling algorithm for ObjectAllocationSample events in JFR is neither simple nor high-quality (the result profiles look quite different from the profiles collected with the traditional allocation events). |
hi,
async-profiler's alloc engine uses intervals to reduce the number of events and reduce overhead.
For many applications, interval=256k or 512k is good enough, but for many applications with large memory throughput, it may not be appropriate and cannot well control the upper limit of the number of events and overhead.
JFR provides a throttling mechanism in JDK16, which can limit the number of events per unit time and try to ensure that it is statistically representative.
I wonder if I can add such feature to async-profiler?
The text was updated successfully, but these errors were encountered: