Commit | Line | Data |
---|---|---|
21b4aa5d JA |
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 |