-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Introduce optional memory ballast #45
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
owais
requested review from
bogdandrutu,
flands,
pjanotti,
songy23 and
tigrannajaryan
as code owners
June 24, 2019 13:40
This change add an optional memory ballast to help with ease GC pressure in high thoughput scenarios - Added new CLI flag called `--mem-ballast-size-mib` which represents the size of memory ballast to use in MiB. Omitting the value or setting it to zero does not set the ballast. - Updated process telemetry code to account for the ballast and report memory usage statistics after subtracting the ballast size. I'm not sure if this makes sense in every scenario. If not, we can add another flag to disable the behaviour. Another option is to add one more metric that just exports the memory ballast size as a static number and then let metric consumers to adjust the numbers. https://blog.twitch.tv/go-memory-ballast-how-i-learnt-to-stop-worrying-and-love-the-heap-26c2462549a2 golang/go#23044
tigrannajaryan
approved these changes
Jun 25, 2019
pjanotti
reviewed
Jun 25, 2019
pjanotti
approved these changes
Jun 25, 2019
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.
LGTM
6 tasks
MovieStoreGuy
pushed a commit
to atlassian-forks/opentelemetry-collector
that referenced
this pull request
Nov 11, 2021
hughesjj
pushed a commit
to hughesjj/opentelemetry-collector
that referenced
this pull request
Apr 27, 2023
* Initial installer script for collector and fluentd * Initial config with hostmetrics for linux hosts * Allow release to test stage without signing * Add default apt/yum repo definition files * Migrate tests to pytest
This was referenced Aug 31, 2023
Troels51
pushed a commit
to Troels51/opentelemetry-collector
that referenced
this pull request
Jul 5, 2024
* Work on Flush-Close api * Add Flush & Close * Add flush and close interface * Remove return type from Flush-Close * Fix docs
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This change add an optional memory ballast to help with ease GC pressure
in high thoughput scenarios
Added new CLI flag called
--mem-ballast-size-mib
which representsthe size of memory ballast to use in MiB. Omitting the value or setting
it to zero does not set the ballast.
Updated process telemetry code to account for the ballast and report
memory usage statistics after subtracting the ballast size. I'm not sure
if this makes sense in every scenario. If not, we can add another flag
to disable the behaviour. Another option is to add one more metric that
just exports the memory ballast size as a static number and then let
metric consumers to adjust the numbers.
https://blog.twitch.tv/go-memory-ballast-how-i-learnt-to-stop-worrying-and-love-the-heap-26c2462549a2
golang/go#23044
Effects
We've seen 30-50% increase in throughput and were able to considerably reduce the size of our collector cluster at Omnition.