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

Use SPDK dynamic scheduler #1745

Open
judahrand opened this issue Oct 1, 2024 · 2 comments
Open

Use SPDK dynamic scheduler #1745

judahrand opened this issue Oct 1, 2024 · 2 comments
Labels
Enhancement New feature or request

Comments

@judahrand
Copy link

judahrand commented Oct 1, 2024

Is your feature request related to a problem? Please describe.
When running Mayastor on clusters which have variable workloads CPU usage and power consumption increases significantly.

Describe the solution you'd like
SPDK has a dynamic scheduler which, I believe, should reduce the power consumption without significantly impacting performance. Crucially, when threads are idle they are switched into interrupt mode and stop polling.

Additional context
I've tried deploying Mayastor at home but the increased power consumption was enough for me to abandon it. I don't have much understanding of SPDK but thought I'd put this up as from my reading it seems like this might help. I'd welcome being further educated though!

@judahrand
Copy link
Author

judahrand commented Oct 1, 2024

It would also be fantastic if Mayastor could run in interrupt mode for cases where low latency is not important! This was added for NVMEoF TCP in the newest version of SPDK, I believe.

https://spdk.io/release/2024/09/27/v24.09_release/

@tiagolobocastro tiagolobocastro added the Enhancement New feature or request label Oct 2, 2024
@tiagolobocastro
Copy link
Contributor

Indeed seems SPDK now has interrupt mode for nvme-tcp. We have to evaluate this mode itself and then figure out how we can integrate with it.
We have our own reactors which would need adapting to support this.
I think this would be a very good enhancement for Mayastor.

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
None yet
Development

No branches or pull requests

2 participants