Fio 3.37
[fio.git] / examples / xnvme-zoned.fio
1 ; Running xNVMe/fio on a Zoned Device
2 ;
3 ; Writes 1GB at QD1 using 4K BS and verifies it.
4 ;
5 ; README
6 ;
7 ; This job-file is intended to be used as:
8 ;
9 ; # Use the built-in io_uring engine to get baseline numbers
10 ; fio examples/xnvme-zoned.fio \
11 ;   --section=default \
12 ;   --ioengine=io_uring \
13 ;   --sqthread_poll=1 \
14 ;   --filename=/dev/nvme0n1
15 ;
16 ; # Use the xNVMe io-engine engine with Linux backend and io_uring async. impl.
17 ; fio examples/xnvme-zoned.fio \
18 ;   --section=default \
19 ;   --ioengine=xnvme \
20 ;   --sqthread_poll=1 \
21 ;   --xnvme_async=io_uring \
22 ;   --filename=/dev/nvme0n1
23 ;
24 ; # Use the xNVMe io-engine engine with Linux backend and libaio async. impl.
25 ; fio examples/xnvme-zoned.fio \
26 ;   --section=default \
27 ;   --ioengine=xnvme \
28 ;   --xnvme_async=libaio \
29 ;   --filename=/dev/nvme0n1
30 ;
31 ; # Use the xNVMe io-engine engine with SPDK backend, note that you have to set the Namespace-id
32 ; fio examples/xnvme-zoned.fio \
33 ;   --section=default \
34 ;   --ioengine=xnvme \
35 ;   --xnvme_dev_nsid=1 \
36 ;   --filename=0000\\:01\\:00.0
37 ;
38 ; NOTE: The URI encoded in the filename above, the ":" must be escaped.
39 ;
40 ; On the command-line using two "\\":
41 ;
42 ; --filename=0000\\:01\\:00.0
43 ;
44 ; Within a fio-script using a single "\":
45 ;
46 ; filename=0000\:01\:00.0
47 ;
48 ; NOTE: If you want to override the default bs, iodepth, and workload, then
49 ; invoke it as:
50 ;
51 ; FIO_BS="512" FIO_RW="verify" FIO_IODEPTH=16 fio examples/xnvme-zoned.fio \
52 ;   --section=override
53 ;
54 ; To reset all zones on the device to EMPTY state aka. wipe the entire device.
55 ;
56 ; # zoned mgmt-reset /dev/nvme0n2 --slba 0x0 --all
57 ;
58 [global]
59 zonemode=zbd
60 rw=write
61 size=1G
62 iodepth=1
63 bs=4K
64 direct=1
65 thread=1
66 ramp_time=1
67 norandommap=1
68 verify=crc32c
69 ; Avoid accidentally creating device files; e.g. "/dev/nvme0n1", "/dev/nullb0"
70 allow_file_create=0
71 ;
72 ; NOTE: If fio complains about zone-size, then run:
73 ;
74 ; # zoned info /dev/nvme0n1
75 ;
76 ; The command will provide the values you need, then in the fio-script define:
77 ;
78 ; zonesize=nsect * nbytes
79 ;
80 ;zonesize=
81
82 [default]
83
84 [override]
85 rw=${FIO_RW}
86 iodepth=${FIO_IODEPTH}
87 bs=${FIO_BS}