Linux 5.11-rc1
[linux-2.6-microblaze.git] / tools / io_uring / README
1 This directory includes a few programs that demonstrate how to use io_uring
2 in an application. The examples are:
3
4 io_uring-cp
5         A very basic io_uring implementation of cp(1). It takes two
6         arguments, copies the first argument to the second. This example
7         is part of liburing, and hence uses the simplified liburing API
8         for setting up an io_uring instance, submitting IO, completing IO,
9         etc. The support functions in queue.c and setup.c are straight
10         out of liburing.
11
12 io_uring-bench
13         Benchmark program that does random reads on a number of files. This
14         app demonstrates the various features of io_uring, like fixed files,
15         fixed buffers, and polled IO. There are options in the program to
16         control which features to use. Arguments is the file (or files) that
17         io_uring-bench should operate on. This uses the raw io_uring
18         interface.
19
20 liburing can be cloned with git here:
21
22         git://git.kernel.dk/liburing
23
24 and contains a number of unit tests as well for testing io_uring. It also
25 comes with man pages for the three system calls.
26
27 Fio includes an io_uring engine, you can clone fio here:
28
29         git://git.kernel.dk/fio