From: Niklas Cassel Date: Thu, 3 Feb 2022 19:28:28 +0000 (+0000) Subject: examples: add new cmdprio_bssplit format examples X-Git-Tag: fio-3.30~68 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=4927ccc96357b182746f3b7ce9fa3d7162131547;hp=f0547200d6d48dd847cae48f8db08cda0a38fd89;p=fio.git examples: add new cmdprio_bssplit format examples Add examples of the new cmdprio_bssplit format to cmdprio-bssplit.fio. In this new format, a priority class and a priority level can be specified in the cmdprio_bssplit entry itself. Add the new cmdprio_bssplit format examples as new jobs, as the old format is still supported. Signed-off-by: Niklas Cassel Reviewed-by: Damien Le Moal Link: https://lore.kernel.org/r/20220203192814.18552-10-Niklas.Cassel@wdc.com Signed-off-by: Jens Axboe --- diff --git a/examples/cmdprio-bssplit.fio b/examples/cmdprio-bssplit.fio index 47e9a790..f3b2fac0 100644 --- a/examples/cmdprio-bssplit.fio +++ b/examples/cmdprio-bssplit.fio @@ -1,17 +1,44 @@ ; Randomly read/write a block device file at queue depth 16. -; 40 % of read IOs are 64kB and 60% are 1MB. 100% of writes are 1MB. -; 100% of the 64kB reads are executed at the highest priority and -; all other IOs executed without a priority set. [global] filename=/dev/sda direct=1 write_lat_log=prio-run.log log_prio=1 - -[randrw] rw=randrw -bssplit=64k/40:1024k/60,1024k/100 ioengine=libaio iodepth=16 + +; Simple cmdprio_bssplit format. All non-zero percentage entries will +; use the same prio class and prio level defined by the cmdprio_class +; and cmdprio options. +[cmdprio] +; 40% of read IOs are 64kB and 60% are 1MB. 100% of writes are 1MB. +; 100% of the 64kB reads are executed with prio class 1 and prio level 0. +; All other IOs are executed without a priority set. +bssplit=64k/40:1024k/60,1024k/100 cmdprio_bssplit=64k/100:1024k/0,1024k/0 cmdprio_class=1 +cmdprio=0 + +; Advanced cmdprio_bssplit format. Each non-zero percentage entry can +; use a different prio class and prio level (appended to each entry). +[cmdprio-adv] +; 40% of read IOs are 64kB and 60% are 1MB. 100% of writes are 1MB. +; 25% of the 64kB reads are executed with prio class 1 and prio level 1, +; 75% of the 64kB reads are executed with prio class 3 and prio level 2. +; All other IOs are executed without a priority set. +stonewall +bssplit=64k/40:1024k/60,1024k/100 +cmdprio_bssplit=64k/25/1/1:64k/75/3/2:1024k/0,1024k/0 + +; Identical to the previous example, but with a default priority defined. +[cmdprio-adv-def] +; 40% of read IOs are 64kB and 60% are 1MB. 100% of writes are 1MB. +; 25% of the 64kB reads are executed with prio class 1 and prio level 1, +; 75% of the 64kB reads are executed with prio class 3 and prio level 2. +; All other IOs are executed with prio class 2 and prio level 7. +stonewall +prioclass=2 +prio=7 +bssplit=64k/40:1024k/60,1024k/100 +cmdprio_bssplit=64k/25/1/1:64k/75/3/2:1024k/0,1024k/0