gh-144888: JIT executor bloom filter wide-type optimization and function Inlining#146114
Merged
Fidget-Spinner merged 1 commit intopython:mainfrom Mar 18, 2026
Merged
gh-144888: JIT executor bloom filter wide-type optimization and function Inlining#146114Fidget-Spinner merged 1 commit intopython:mainfrom
Fidget-Spinner merged 1 commit intopython:mainfrom
Conversation
Contributor
|
Drive by: You might be able to speed this up further by using vector extension of gcc, see https://gcc.gnu.org/onlinedocs/gcc/Vector-Extensions.html |
Contributor
Author
Thanks for advice! I'll give it a try. |
Member
I think I'm not too keen on this. We're probably going to start reaching diminishing returns soon. So any more effort put into this might not show up on any real benchmarks. Maybe in the future we can revisit this. |
This file contains hidden or 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
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 PR refactors and optimizes the Bloom Filter used by the JIT executor invalidating. Key improvements include:
uint32_twith wider word types (__uint128_toruint64_t) to reduce the number of memory accessesstatic inlineto eliminate function call overheadmicrobench result on my virtual machine(AMD Ryzen 5 5600X (6C12T), 16 GB RAM, Debian 13 (trixie), Linux 6.12, GCC 14.2, x86_64):