-
Notifications
You must be signed in to change notification settings - Fork 473
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
perf: Set async_io default value to yes #2308
Conversation
@xiaobiaozhao You need to turn the default value of rocksdb.async_io to true as well. Another quick question: is the rocksdb community marking this feature as stable? |
The feature has been unlabeled for experimentation, but rocksdb has not enabled it by default. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, we need to highlight this change in the release log.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is LGTM. Seems for Scan it depends on advanced fs api and could decrease latency on some disk. I don't know on some fast NVMe disk, would this helps a lot? Also maybe it doesn't works well on some Linux kernel without io_uring?
Anyway this is ok
Do you mean on older kernels? I just test on ubuntu 20/22/24 , it works well. |
On legacy os it uses "Read" rather than ReadAsync api |
I've check the code of document:
For rocksdb, related macro is
I didn't check do we enabled this. For fs io, a code below would be triggered:
If fs doesn't supports async (.i.e no io_uring ) I guess this might making sense in The I also checked the code for iterator, |
Yeah we need to check the implementation for its behavior. In docker image, seems we don't install liburing at all. Not sure if the option has effect. |
here is a test report |
Quality Gate failedFailed conditions |
|
async_io had ready, I think kvrocks should use async_io as default value.