These are OCaml bindings for the Linux io_uring stack (an alternative to using syscalls such as select or epoll).
The Eio library provides a higher-level effects-based API that uses this library to implement its Linux backend, but ocaml-uring may be useful with single-core non-effects versions of OCaml too.
To use the library directly:
Uring.create to initialise a ring.Uring.readv.Uring.submit to notify the kernel of the new requests.Uring.wait to wait until an operation is complete.The tests directory contains some examples.
This library is released under the ISC license (see LICENSE.md), but note that the repository also vendors liburing - see vendor/liburing/README.