[Twisted-Python] reactor for Linux io_uring
Barry Scott
barry.scott at forcepoint.com
Mon Jan 4 08:15:36 MST 2021
On Monday, 4 January 2021 04:01:42 GMT Ian Haywood wrote:
> In investigating async file I/O I came across this. In a nutshell it's
> the new epoll()
> It's marginally more efficient although this is only apparent at very
> high loads.
> What's more interesting is that io_uring accepts files as
> well as network/pipe handles: avoiding the need for threads.
What threads? Why do you call out file FDs different from socket FDs?
The point of io_uring is to avoid transitions between user and kernel right?
Nothing to do with thread.
In current twisted you can run complex network code without threads
already.
> Here's a good intro: https://unixism.net/loti/index.html
Also there is full coverage of io_uring on lwn.net.
Its a fast evolving kernel API.
> If people think an IoUringReactor is worthwhile I'll open a ticket and
> make a start.
I'm guessing that you will need to write a Python extension to get at
io_uring or use ctypes. Is that what you where expecting?
> However it will need a reviewer... :-)
Yes this is going to be complex code that few people have any experience with.
Barry
> Ian
>
> _______________________________________________
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
> https://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>
More information about the Twisted-Python
mailing list