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

Inline the validate() function #119

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

bluetech
Copy link
Contributor

This is based on #118, please look at the last commit only. (Sorry for the jungle of PRs, I can rebase them whichever way).


It somewhat obscures the control flow and adds some non-trivial overhead.

Inline it in favor of the direct match/if combination.

On the bench/ microbenchmark:

Before: 10700.2 requests/sec
After : 11334.0 requests/sec

_EventBundle uses a lot of dynamic python features to save on some
duplication, but it slows things down, and will also make it much harder
to add static typing. Since these types are now pretty stable, it seems
not worth it.

On the bench/ micro-benchmark:

Before:  9322.6 requests/sec
After : 10544.6 requests/sec
It somewhat obscures the control flow and adds some non-trivial
overhead.

Inline it in favor of the direct match/if combination.

On the bench/ microbenchmark:

Before: 10700.2 requests/sec
After : 11334.0 requests/sec
@pgjones
Copy link
Member

pgjones commented May 16, 2021

I also prefer this approach, however as it more of a preference question I'll wait for more views.

@tomchristie
Copy link
Contributor

I also prefer this approach, however as it more of a preference question I'll wait for more views.

From the last commit, that seems okay as a trade-off, yup.
Tho I'd probably also want to review again once there's an up to date PR for it, and have the micorbenchmark re-run against the latest PR-against-master.

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.

None yet

3 participants