Skip to content
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

Adjust read window based on used memory #1013

Merged
merged 9 commits into from
Oct 2, 2024
Merged

Conversation

monthonk
Copy link
Contributor

@monthonk monthonk commented Sep 13, 2024

Description of change

Add a mechanism to track memory usage of the prefetcher and adjust its read window size based on available memory.

Relevant issues: #987

Does this change impact existing behavior?

Yes, reads are impacted.

Does this change need a changelog entry in any of the crates?

Yes, mountpoint-s3 changelog will be updated along with documentation in the following PR.


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and I agree to the terms of the Developer Certificate of Origin (DCO).

@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:51 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:51 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:51 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:51 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:51 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:51 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:51 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:55 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:55 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:55 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:55 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:55 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:55 — with GitHub Actions Failure
@monthonk monthonk had a problem deploying to PR integration tests September 13, 2024 08:55 — with GitHub Actions Failure
@monthonk monthonk temporarily deployed to PR integration tests September 13, 2024 08:58 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 13, 2024 08:58 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 13, 2024 08:58 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 13, 2024 08:58 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 13, 2024 08:58 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 13, 2024 08:58 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 13, 2024 08:58 — with GitHub Actions Inactive
@monthonk monthonk added the performance PRs to run benchmarks on label Sep 13, 2024
Signed-off-by: Monthon Klongklaew <[email protected]>
@monthonk monthonk temporarily deployed to PR integration tests September 27, 2024 09:54 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 27, 2024 09:54 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 27, 2024 09:54 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 27, 2024 09:54 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 27, 2024 09:54 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 27, 2024 09:54 — with GitHub Actions Inactive
@monthonk monthonk temporarily deployed to PR integration tests September 27, 2024 09:54 — with GitHub Actions Inactive
@monthonk monthonk requested a review from vladem September 27, 2024 10:02
Copy link
Contributor

@vladem vladem left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@monthonk monthonk added this pull request to the merge queue Oct 2, 2024
Merged via the queue into awslabs:main with commit fda5103 Oct 2, 2024
26 checks passed
@monthonk monthonk deleted the mem_limiter branch October 2, 2024 08:48
monthonk added a commit to monthonk/mountpoint-s3 that referenced this pull request Oct 2, 2024
We have changed some log level in awslabs#1013. We probably want to push some
of them down to trace instead of debug.

Signed-off-by: Monthon Klongklaew <[email protected]>
github-merge-queue bot pushed a commit that referenced this pull request Oct 2, 2024
We have changed some log level in #1013. We probably want to push some
of them down to trace instead of debug.

Signed-off-by: Monthon Klongklaew <[email protected]>
rajdchak pushed a commit to rajdchak/mountpoint-s3-fork that referenced this pull request Oct 4, 2024
* Mem limiter prototype

Signed-off-by: Monthon Klongklaew <[email protected]>

* Clean up development logging

Signed-off-by: Vlad Volodkin <[email protected]>

* Scale up atomically, scale down after data was consumed

Signed-off-by: Vladislav Volodkin <[email protected]>

* Remove Client from MemoryLimiter, document this structure

Signed-off-by: Vladislav Volodkin <[email protected]>

* Simplify the logic and include client metrics

Signed-off-by: Monthon Klongklaew <[email protected]>

* Correct client mem usage stats

Signed-off-by: Monthon Klongklaew <[email protected]>

* PR comments

Signed-off-by: Monthon Klongklaew <[email protected]>

* Put the cli argument behind a feature flag

Signed-off-by: Monthon Klongklaew <[email protected]>

* Fix scaling logic and address comments

Signed-off-by: Monthon Klongklaew <[email protected]>

---------

Signed-off-by: Monthon Klongklaew <[email protected]>
Signed-off-by: Vlad Volodkin <[email protected]>
Signed-off-by: Vladislav Volodkin <[email protected]>
Co-authored-by: Vlad Volodkin <[email protected]>
Co-authored-by: Vladislav Volodkin <[email protected]>
rajdchak pushed a commit to rajdchak/mountpoint-s3-fork that referenced this pull request Oct 4, 2024
We have changed some log level in awslabs#1013. We probably want to push some
of them down to trace instead of debug.

Signed-off-by: Monthon Klongklaew <[email protected]>
rajdchak pushed a commit to rajdchak/mountpoint-s3-fork that referenced this pull request Oct 8, 2024
* Mem limiter prototype

Signed-off-by: Monthon Klongklaew <[email protected]>

* Clean up development logging

Signed-off-by: Vlad Volodkin <[email protected]>

* Scale up atomically, scale down after data was consumed

Signed-off-by: Vladislav Volodkin <[email protected]>

* Remove Client from MemoryLimiter, document this structure

Signed-off-by: Vladislav Volodkin <[email protected]>

* Simplify the logic and include client metrics

Signed-off-by: Monthon Klongklaew <[email protected]>

* Correct client mem usage stats

Signed-off-by: Monthon Klongklaew <[email protected]>

* PR comments

Signed-off-by: Monthon Klongklaew <[email protected]>

* Put the cli argument behind a feature flag

Signed-off-by: Monthon Klongklaew <[email protected]>

* Fix scaling logic and address comments

Signed-off-by: Monthon Klongklaew <[email protected]>

---------

Signed-off-by: Monthon Klongklaew <[email protected]>
Signed-off-by: Vlad Volodkin <[email protected]>
Signed-off-by: Vladislav Volodkin <[email protected]>
Co-authored-by: Vlad Volodkin <[email protected]>
Co-authored-by: Vladislav Volodkin <[email protected]>
rajdchak pushed a commit to rajdchak/mountpoint-s3-fork that referenced this pull request Oct 8, 2024
We have changed some log level in awslabs#1013. We probably want to push some
of them down to trace instead of debug.

Signed-off-by: Monthon Klongklaew <[email protected]>
rajdchak added a commit to rajdchak/mountpoint-s3-fork that referenced this pull request Oct 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
performance PRs to run benchmarks on
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants