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

Idea: Optimising compile-time filter chains #272

Open
XAMPPRocky opened this issue May 21, 2021 · 0 comments
Open

Idea: Optimising compile-time filter chains #272

XAMPPRocky opened this issue May 21, 2021 · 0 comments
Labels
area/filters Related to Quilkin's filter API. area/performance Anything to do with Quilkin being slow, or making it go faster. kind/design Proposal discussing new features / fixes and how they should be implemented priority/low Issues that don't need to be addressed in the near term.

Comments

@XAMPPRocky
Copy link
Collaborator

XAMPPRocky commented May 21, 2021

Someone recently wrote this crate (zero_v) as a prototype of an approach to optimise out vtables when you know the collection of dynamic objects that you’re going to be running. They have a benchmark you can run and the gains are pretty substantial from what I can see (~100ns to ~20-30ns).

I asked about making this runtime-friendly so that you could still have this when you update at runtime (such as what we do), and it seems relatively straightforward, as we’re already doing the enum approach for configuration.

@XAMPPRocky XAMPPRocky added area/filters Related to Quilkin's filter API. area/performance Anything to do with Quilkin being slow, or making it go faster. kind/design Proposal discussing new features / fixes and how they should be implemented labels May 28, 2021
@XAMPPRocky XAMPPRocky added the priority/low Issues that don't need to be addressed in the near term. label Jul 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/filters Related to Quilkin's filter API. area/performance Anything to do with Quilkin being slow, or making it go faster. kind/design Proposal discussing new features / fixes and how they should be implemented priority/low Issues that don't need to be addressed in the near term.
Projects
None yet
Development

No branches or pull requests

1 participant