Skip to content
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

Feature Request: Thread Affinity #476

Closed
Tianpingan opened this issue Apr 23, 2023 · 3 comments · Fixed by #629
Closed

Feature Request: Thread Affinity #476

Tianpingan opened this issue Apr 23, 2023 · 3 comments · Fixed by #629
Assignees
Labels
enhancement New feature or request

Comments

@Tianpingan
Copy link

Hi Developers!

We are building a new application on top of high performance storage products, NVMe SSDs for example along with RocksDB. To fully utilize potentials of the hardware, we are using a Thread-per-Core model, similar to SPDK, Seastar and Glommio, meaning we need to dedicate a few cores to them.

After investigation, we see two options: isolcpus and thread-affinity. We rule out the former as it is not flexible enough and does not meet deployment requirements. RocksDB is extensible through Env, where Filesystem, etc are abstracted. Unfortunately, I do not see a good place to plug thread affinity in.

A preliminary attempt is made here.

@bosmatt bosmatt added the To review A feature request that has not been reviewed yet label Apr 30, 2023
@hilikspdb
Copy link
Contributor

We can add an callback to the env "on_thread_starts" and call it with the relevant parameters , the user will need to implement the callback and change the attributes of the thread.

@bosmatt bosmatt moved this to 📖 Need your Opinion! in Speedb Roadmap May 23, 2023
@Tianpingan
Copy link
Author

We can add an callback to the env "on_thread_starts" and call it with the relevant parameters , the user will need to implement the callback and change the attributes of the thread.

Thank you!
what can I do for this issue to help you

@bosmatt bosmatt moved this from 📖 Need your Opinion! to 🏗️ Working on it in Speedb Roadmap Jun 21, 2023
@bosmatt bosmatt assigned bosmatt and ofriedma and unassigned bosmatt Jun 21, 2023
@bosmatt bosmatt added enhancement New feature or request Working on it A feature request that is being actively worked on and removed To review A feature request that has not been reviewed yet labels Jun 27, 2023
@erez-speedb
Copy link

Passed perf tests

ofriedma pushed a commit that referenced this issue Aug 17, 2023
ofriedma pushed a commit that referenced this issue Aug 19, 2023
@github-project-automation github-project-automation bot moved this from 🏗️ Working on it to 📖 Need your Opinion! in Speedb Roadmap Aug 20, 2023
ofriedma added a commit that referenced this issue Aug 20, 2023
@ofriedma ofriedma moved this from 📖 Need your Opinion! to ✅ Shipped in Speedb Roadmap Sep 4, 2023
@bosmatt bosmatt removed the Working on it A feature request that is being actively worked on label Oct 1, 2023
ofriedma added a commit that referenced this issue Nov 22, 2023
ofriedma added a commit that referenced this issue Nov 22, 2023
udi-speedb pushed a commit that referenced this issue Nov 23, 2023
udi-speedb pushed a commit that referenced this issue Dec 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: ✅ Shipped
Development

Successfully merging a pull request may close this issue.

6 participants