-
Notifications
You must be signed in to change notification settings - Fork 500
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
feat: Implement io_uring support via tokio_uring
#1480
Comments
I still maintain an interest in these types of questions, so let me see if tokio_uring is already available. |
actix-files already employs tokio_uring, making it worthwhile to give it a shot. |
It's |
Hello, it seems this future is not moved forward in a long time, Can I get to know which blocked it? If needed, I can help to further push this feature to opendal. @Xuanwo |
Using |
You mean that opendal core codebase can not require some special rust runtime instance (for example tokio), we need to find some io_uring instance just return Furture? |
Exactly! |
As we have added some Tokio runtime as dependencies of OpenDAL, So I think the problem against OpenDAL vision which we mentioned before does not exist. I have done some research on |
Here the nuclei author, I am writing the new ring design. Hopefully, it will land soon. On the other hand, what exactly this comment mentions is why I wrote whole nuclei and why I wrote async runtimes, and M:N model everywhere. Tioli, don't poison your dependencies, it will be irreversible, and you are %100 right on what you wrote there. |
Looking forward to your project! |
Hi all, I have updated nuclei to 0.4. It now includes also multishot accept and some parts of multishot API. + socket state changes and more improvements and recent io_uring changes came with 5.19+. Now I am working on 6.1+ changes, it will take some time, since that requires some design changes. https://crates.io/crates/nuclei In addition to that, here is the benchmark comparison with Epoll for HTTP server: https://vertexclique.github.io/nuclei/#/benches In addition to that book is here: https://vertexclique.github.io/nuclei/#/ Have a good time! |
Congrats!
A small feedback: the website seems broken for css missing. |
I will check, just deployed the site. Is it readable at least? |
There is a pdf at the end of the page. That summarizes io_uring performance in two modes. Maybe that's better to check. I will take a look at the site tomorrow. |
Tracked at #4520. We will start a new issue once we start this work. |
Previously, we aimed to implement runtime agonistic
io_uring
support in OpenDAL, but this proved to be a difficult task that hindered our progress. Therefore, we have revised our goal to initially addio_uring
support viatokio_uring
and then collaborate with the community to enhance it.To enable
tokio_uring
, a newer Linux kernel (5.6 and above) and atokio-uring
runtime are required. We will integrate this support under a new feature known asservices-fs-with-io-uring
. Once activated, the service fs implementation will be based onio_uring
.NOTE: It is the users' responsibility to ensure that this service is running on the
tokio_uring
runtime.Related Discussions
The text was updated successfully, but these errors were encountered: