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

linux: replace default allocator with jemalloc #2882

Merged
merged 14 commits into from
Apr 18, 2023
Merged

Conversation

garypen
Copy link
Contributor

@garypen garypen commented Mar 31, 2023

Experiment with jemalloc.

Checklist

Complete the checklist (and note appropriate exceptions) before a final PR is raised.

  • Changes are compatible[^1]
  • Documentation[^2] completed
  • Performance impact assessed and acceptable
    - Tests added and passing[^3]
    - [ ] Unit Tests
    - [ ] Integration Tests
    - [ ] Manual Tests

Exceptions

Note any exceptions here

Notes

[^1]. It may be appropriate to bring upcoming changes to the attention of other (impacted) groups. Please endeavour to do this before seeking PR approval. The mechanism for doing this will vary considerably, so use your judgement as to how and when to do this.
[^2]. Configuration is an important part of many changes. Where applicable please try to document configuration examples.
[^3]. Tick whichever testing boxes are applicable. If you are adding Manual Tests:
- please document the manual testing (extensively) in the Exceptions.
- please raise a separate issue to automate the test and label it (or ask for it to be labeled) as manual test

@garypen garypen self-assigned this Mar 31, 2023
@github-actions

This comment has been minimized.

@garypen garypen marked this pull request as ready for review April 6, 2023 11:29
@garypen garypen requested a review from Geal April 13, 2023 08:55
and not "unix-like" OSs. i.e.: Linux, BSD, OSX...
@garypen garypen changed the title jemalloc experiment linux: replace default allocator with jemalloc Apr 17, 2023
@Geal
Copy link
Contributor

Geal commented Apr 17, 2023

perf test please

@Geal Geal changed the base branch from dev to staging-perf April 18, 2023 08:57
@Geal Geal merged commit dd8ca62 into staging-perf Apr 18, 2023
@Geal Geal deleted the garypen/jemalloc branch April 18, 2023 09:07
@abernix abernix mentioned this pull request Apr 24, 2023
Geal pushed a commit that referenced this pull request Apr 25, 2023
Router execution results in a heavily fragmented heap, that is hard to manage for the default allocator. jemallocator handles it better, which results in performance improvements, in latency and memory usage
Geal added a commit that referenced this pull request May 15, 2023
Batch of performance improvements:

* linux: replace default allocator with jemalloc (#2882) 
* Add a private part to the Context structure (#2802) 
* lighter path manipulation in response formatting (#2854) 
* prevent span attributes from being formatted to write logs (#2890) 
* Parse Accept headers once instead of three times (#2847) 
* use a parking-lot mutex in Context (#2885) 
* Filter spans before sending them to the opentelemetry layer (#2894)
@BrynCooke BrynCooke mentioned this pull request May 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants