scylladb / scylladb/python-rs-driver
Investigate how We could optimize code for free threaded python
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 6
- Forks
- 7
- Avg merge
- 5d 13h
- Merged PRs (30d)
- 9
Description
In this PR We introduce some optimization that are connected to minimizing GIL acquisitions : https://github.com/scylladb/python-rs-driver/pull/151. In most benchmark scenarios it also improves performance for free threaded python. However in scenario with concurrency=1 where We are selecting large results from the database the performance decreased. We need to investigate why.
Also We need to consider adding conditional compilation based on whether user is using free threaded python or not. In free threaded python acquiring GIL will not be our main overhead so We could write things differently.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with PR #151 and reproduce the large-result, concurrency=1 benchmark under free-threaded Python and the regular build. Trace the GIL-acquisition changes involved in that path, then assess whether conditional compilation is needed; done means the regression is explained and an optimization plan or verified improvement is documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, rust
- Domain
- backend, databases
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 45/100