Skip to content

Conversation

@Icxolu
Copy link
Contributor

@Icxolu Icxolu commented Oct 25, 2024

This migrates the Python call APIs to use IntoPyObject for their arguments. For simplicity this removes removes the vectorcall specialization for now. Hopefully we can bring it back with a PyCallArgs trait as discussed in #4456 (comment) in 0.24

@codspeed-hq
Copy link

codspeed-hq bot commented Oct 25, 2024

CodSpeed Performance Report

Merging #4653 will degrade performances by 36.12%

Comparing Icxolu:intopyobject-call-api (21420cd) with main (9ac89a9)

Summary

❌ 5 regressions
✅ 78 untouched benchmarks

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Benchmarks breakdown

Benchmark main Icxolu:intopyobject-call-api Change
call 620.7 µs 756.6 µs -17.97%
call_1 258.6 µs 380.6 µs -32.04%
call_method_1 647.2 µs 1,012.6 µs -36.09%
call_method_one_arg 617.4 µs 966.5 µs -36.12%
call_one_arg 232.5 µs 348.1 µs -33.19%

Copy link
Member

@davidhewitt davidhewitt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes agreed, it's a shame to lose the performance but I think given the greater need is (in my opinion) to get 0.23 shipped, let's create an issue with a note to this PR both to remind ourselves of this follow-up and also so it's easy for us to find the code we removed.

@Icxolu
Copy link
Contributor Author

Icxolu commented Oct 26, 2024

I opened #4656 to track this.

@Icxolu Icxolu added this pull request to the merge queue Oct 26, 2024
Merged via the queue into PyO3:main with commit b56806a Oct 26, 2024
@Icxolu Icxolu deleted the intopyobject-call-api branch October 26, 2024 09:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI-skip-changelog Skip checking changelog entry

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants