-
Notifications
You must be signed in to change notification settings - Fork 17
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
Investigate performance differences with memchr::memmem
implementation
#40
Comments
Since I spent a lot of time on this lately, I'd like to give a bit more of a holistic description of differences as I see them. And I'll talk a little bit about the actual benchmarks from the The benchmarks are split into four variations (only two of which are relevant to
Getting into actual code/design differences:
I think the thing I realized while doing this exercise is that it's not really possible to do better in every case. I'm sure y'all know this of course, but it's worth calling out explicitly. You kind of have to pick your trade offs and which cases you want to hit. For example, there are some cases where the old OK, I think I've written enough for now. Happy to keep chatting and learn from each other! |
This discussion made me realize that we actually don't need to force users of |
Very likely will! If you ping me when a new release is out, then I'll update the benchmarks. :-) |
@BurntSushi version 0.3.0 has just been published! |
This was kicked off due to the sliceslice 0.3.0 release: cloudflare/sliceslice-rs#40
Yup, the benchmarks with the biggest difference are
|
Thank you 👍 Nice performance improvements and imo improved API for our users. |
@BurntSushi version 0.3.1 has just been published! Do you think you could rerun the numbers again between your |
#26 lead to a very interesting discussion where it was brought up that in some cases
sliceslice
is substantially slower thanmemchr::memmem
.We should investigate why, decide if this is something that actually matters for us and if so, fix it
See #26 (comment) for detailed performance results
The text was updated successfully, but these errors were encountered: