Skip to content

gh-117431: Adapt bytes and bytearray .startswith() and .endswith() to Argument Clinic #117495

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

Merged
merged 11 commits into from
Apr 3, 2024

Conversation

erlend-aasland
Copy link
Contributor

@erlend-aasland erlend-aasland commented Apr 3, 2024

This change gives a significant speedup, as the METH_FASTCALL calling convention is now used.

@erlend-aasland
Copy link
Contributor Author

erlend-aasland commented Apr 3, 2024

Release build on macOS:

# main
$ ./python.exe -m timeit -s "b = b'abcdef'" "b.startswith(b'abc')"
5000000 loops, best of 5: 89.6 nsec per loop

# this PR
$ ./python.exe -m timeit -s "b = b'abcdef'" "b.startswith(b'abc')"
10000000 loops, best of 5: 27.3 nsec per loop

@bedevere-app
Copy link

bedevere-app bot commented Apr 3, 2024

When you're done making the requested changes, leave the comment: I have made the requested changes; please review again.

@erlend-aasland erlend-aasland requested a review from methane April 3, 2024 09:56
…'the bytes' and 'the bytearray' in docstring
@erlend-aasland
Copy link
Contributor Author

Thanks for the review, Inada-san!

@erlend-aasland erlend-aasland merged commit 595bb49 into python:main Apr 3, 2024
@erlend-aasland erlend-aasland deleted the perf/bytes.starwith branch April 3, 2024 11:11
diegorusso pushed a commit to diegorusso/cpython that referenced this pull request Apr 17, 2024
…h() to Argument Clinic (python#117495)

This change gives a significant speedup, as the METH_FASTCALL calling
convention is now used.
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.

2 participants