1IOCOST.CONF(5) iocost.conf IOCOST.CONF(5)
2
3
4
6 iocost.conf - Configuration files for the iocost solution manager
7
9 /etc/systemd/iocost.conf /etc/systemd/iocost.conf.d/*.conf
10
12 This file configures the behavior of "iocost", a tool mostly used by
13 systemd-udevd(8) rules to automatically apply I/O cost solutions to
14 /sys/fs/cgroup/io.cost.*.
15
16 The qos and model values are calculated based on benchmarks collected
17 on the iocost-benchmark[1] project and turned into a set of solutions
18 that go from most to least isolated. Isolation allows the system to
19 remain responsive in face of high I/O load. Which solutions are
20 available for a device can be queried from the udev metadata attached
21 to it. By default the naive solution is used, which provides the most
22 bandwidth.
23
25 The default configuration is set during compilation, so configuration
26 is only needed when it is necessary to deviate from those defaults.
27 Initially, the main configuration file in /etc/systemd/ contains
28 commented out entries showing the defaults as a guide to the
29 administrator. Local overrides can be created by editing this file or
30 by creating drop-ins, as described below. Using drop-ins for local
31 configuration is recommended over modifications to the main
32 configuration file.
33
34 In addition to the "main" configuration file, drop-in configuration
35 snippets are read from /usr/lib/systemd/*.conf.d/,
36 /usr/local/lib/systemd/*.conf.d/, and /etc/systemd/*.conf.d/. Those
37 drop-ins have higher precedence and override the main configuration
38 file. Files in the *.conf.d/ configuration subdirectories are sorted by
39 their filename in lexicographic order, regardless of in which of the
40 subdirectories they reside. When multiple files specify the same
41 option, for options which accept just a single value, the entry in the
42 file sorted last takes precedence, and for options which accept a list
43 of values, entries are collected as they occur in the sorted files.
44
45 When packages need to customize the configuration, they can install
46 drop-ins under /usr/. Files in /etc/ are reserved for the local
47 administrator, who may use this logic to override the configuration
48 files installed by vendor packages. Drop-ins have to be used to
49 override package drop-ins, since the main configuration file has lower
50 precedence. It is recommended to prefix all filenames in those
51 subdirectories with a two-digit number and a dash, to simplify the
52 ordering of the files.
53
54 To disable a configuration file supplied by the vendor, the recommended
55 way is to place a symlink to /dev/null in the configuration directory
56 in /etc/, with the same filename as the vendor configuration file.
57
59 All options are configured in the [IOCost] section:
60
61 TargetSolution=
62 Chooses which I/O cost solution (identified by named string) should
63 be used for the devices in this system. The known solutions can be
64 queried from the udev metadata attached to the devices. If a device
65 does not have the specified solution, the first one listed in
66 IOCOST_SOLUTIONS is used instead.
67
68 E.g. "TargetSolution=isolated-bandwidth".
69
71 udevadm(8), The iocost-benchmarks github project[1], The resctl-bench
72 documentation details how the values are obtained[2]
73
75 1. iocost-benchmark
76 https://github.com/iocost-benchmark/iocost-benchmarks
77
78 2. The resctl-bench documentation details how the values are obtained
79 https://github.com/facebookexperimental/resctl-demo/tree/main/resctl-bench/doc
80
81
82
83systemd 254 IOCOST.CONF(5)