-
Notifications
You must be signed in to change notification settings - Fork 851
JeMalloc performance improvments #7501
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
Conversation
8f046ab to
be989be
Compare
|
I will benchmark it. |
be989be to
a0eee67
Compare
|
[approve ci autest] |
1 similar comment
|
[approve ci autest] |
|
I will review it. |
|
Here is a link to all the benchmarks I ran: https://docs.google.com/spreadsheets/d/1GyA2brE1TY7aToWc38iB1IH18BJao5hTDDVJXSEUO1w/edit?usp=sharing |
bryancall
left a comment
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.
We might be able to get better performance using thread_local. In some benchmarks I did it was around 180x faster than using unordered_map with a shared_mutex.
masaori335
left a comment
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.
Looks nice!
|
Cherry-picked to v9.1.x branch. |
(cherry picked from commit 7f6b807)
* asf/master: (763 commits) rate_limit: Add a global hook to rate limit concurrent connections based on SNI (apache#8021) Fix uri_signing unit test for out of source builds (apache#8040) tests: Add conditions for BoringSSL and OpenSSL (apache#8045) change debug tags and make sure sni is printed on certain logs (apache#7673) Doc build in CI: build English docs with -W (apache#8039) When loading async SSL configuration file fails, log SSL error (apache#8036) Doc build: treat warnings as errors only by default (apache#8038) For test async_engine, export all symbols (apache#8037) Fix the server cert reload (apache#8030) Treat Sphinx doc build warnings as errors. (apache#8033) Stablize trace curl test in good_request_after_bad (apache#8032) Doc: Update documentation to build cleanly in Sphinx 3. Require Sphinx 3 or better. (apache#7978) Docs: Fix pre-formatting for ratelimit plugin (apache#7986) Make it slightly harder to dump private keys to logs (apache#8029) tls_bad_alpn: Add an openssl version skip check (apache#8026) per thread jemalloc arena for MADV_DONTDUMP (apache#7501) Adds a new rm-destination, this lets you specify either QUERY or PATH, and be able to drop them from the incoming request (apache#8025) Fix HPACK eviction iterator manipulation (apache#8004) Do not invalidate cached resources upon error responses to unsafe methods (apache#7999) Cleanup SSLUtils (apache#8007) ...

Testing to see whether this helps with memory allocation lock contention.