SDL Introducing Async I/O APIs - Backed By IO_uring On Linux
Longtime Linux game porter Ryan Gordon has introduced initial asynchronous I/O APIs for the in-development SDL3 library. On Linux these async I/O APIs allow making use of the modern kernel IO_uring functionality.
The Simple DirectMedia Library provides for many hardware/software abstractions across platforms and primarily used by cross-platform games as well as by other software. The newest addition to SDL is having a universal async I/O API. Ryan Gordon explained in the pull request to upstream SDL:
Aside from the common interface and a generic back-end implementation, for Linux there is IO_uring support underneath and on Microsoft Windows IoRing support.
See more details via the discussion over introducing async I/O APIs for SDL.
The Simple DirectMedia Library provides for many hardware/software abstractions across platforms and primarily used by cross-platform games as well as by other software. The newest addition to SDL is having a universal async I/O API. Ryan Gordon explained in the pull request to upstream SDL:
"This is still in-progress, but I've been heads-down on this for awhile, so I'm putting it in a draft PR.
This implements an async i/o API, and a "generic" backend that implements it with a pool of SDL threads that can block on synchronous SDL_IOStreams. This is likely "good enough" for most things, and it's usable on everything but single-threaded Emscripten builds."
Aside from the common interface and a generic back-end implementation, for Linux there is IO_uring support underneath and on Microsoft Windows IoRing support.
See more details via the discussion over introducing async I/O APIs for SDL.
3 Comments