-
Notifications
You must be signed in to change notification settings - Fork 76
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
improve ScalarQuantizer performance, ESPECIALLY on old GCC #209
Conversation
Signed-off-by: Alexandr Guzhva <alexanderguzhva@gmail.com>
@alexanderguzhva 🔍 Important: PR Classification Needed! For efficient project management and a seamless review process, it's essential to classify your PR correctly. Here's how:
For any PR outside the kind/improvement category, ensure you link to the associated issue using the format: “issue: #”. Thanks for your efforts and contribution to the community!. |
/lgtm |
/approve |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: alexanderguzhva, zhengbuqian The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/run-e2e |
/kind improvement |
Introduces
FAISS_ALWAYS_INLINE
pragma directive and improvesScalarQuantizer
performance with it.Most of performance-critical methods for
ScalarQuantizer
are marked with this new directive, because a compiler (especially, an old one) may be unable to inline it properly. In some of my GCC experiments, such an inlining yields +50% queries per second in a search.The corresponding Faiss PR is facebookresearch/faiss#3141.
/kind improvement