scylladb / scylladb/python-rs-driver

Investigate how We could optimize code for free threaded python

Open
#179 0 comments 0 reactions 0 assignees View on GitHub

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

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.