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

Fixed #166: Promote jemalloc as the alternate memory allocator of choice #176

Closed

Conversation

jiridanek
Copy link
Contributor

@jiridanek jiridanek commented Mar 12, 2022

TODO

  • Add readme doc
|`-DUSE_JEMALLOC=ON`
|The jemalloc library will be linked, replacing the standard C library memory allocation functions with
its own optimized implementations.

@jiridanek jiridanek linked an issue Mar 12, 2022 that may be closed by this pull request

Memory pools are an important technique to improve application performance.
The router already uses a custom memory pool (`src/alloc_pool.c`).
Proton currently does not use any such mechanism.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I should say that it does not really matter that much, because Dispatch takes care to avoid allocations in proton.

@jiridanek jiridanek force-pushed the jd_2022_03_12_jemalloc branch from c20be82 to 9b569d5 Compare March 14, 2022 17:44
@jiridanek jiridanek force-pushed the jd_2022_03_12_jemalloc branch from 9b569d5 to b14c31c Compare April 4, 2022 09:30
@jiridanek jiridanek force-pushed the jd_2022_03_12_jemalloc branch from b14c31c to 90a5099 Compare May 3, 2022 21:00
@jiridanek jiridanek force-pushed the jd_2022_03_12_jemalloc branch from 90a5099 to ccb711e Compare June 1, 2022 21:49
@jiridanek jiridanek force-pushed the jd_2022_03_12_jemalloc branch from ccb711e to 6212bd6 Compare August 5, 2022 18:50
@ganeshmurthy
Copy link
Contributor

@jiridanek Can you please rebase this when you get a chance? Thx.

@jiridanek
Copy link
Contributor Author

I can, but, is this really something that might realistically get in? I felt like its probably a no go, from previous discussions.

jemalloc and the fellow alternate allcators have advantages in observability, for example, but I understood the plan for the router is to write custom malloc wrapper for everything

@jiridanek jiridanek force-pushed the jd_2022_03_12_jemalloc branch from 6212bd6 to 27e2b0d Compare June 8, 2023 15:07
@codecov
Copy link

codecov bot commented Jun 8, 2023

Codecov Report

Merging #176 (6212bd6) into main (76dc9b2) will decrease coverage by 52.00%.
The diff coverage is n/a.

❗ Current head 6212bd6 differs from pull request most recent head 27e2b0d. Consider uploading reports for the commit 27e2b0d to get more accurate results

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #176       +/-   ##
===========================================
- Coverage   77.89%   25.90%   -52.00%     
===========================================
  Files         238      128      -110     
  Lines       60704    31195    -29509     
  Branches     5580     4973      -607     
===========================================
- Hits        47286     8081    -39205     
- Misses      10795    22059    +11264     
+ Partials     2623     1055     -1568     
Flag Coverage Δ
pysystemtests ?
pyunittests ?
systemtests ?
unittests 25.90% <ø> (-1.30%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
calculator 25.90% <ø> (-1.30%) ⬇️
systemtests 25.90% <ø> (-52.00%) ⬇️

@ganeshmurthy
Copy link
Contributor

jemalloc and the fellow alternate allcators have advantages in observability, for example, but I understood the plan for the router is to write custom malloc wrapper for everything

Yes, agreed.

I am closing this one for now.

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.

CMake option to link jemalloc
2 participants