1 The I/O bandwidth controller testplan includes a complete set of testcases to 2 verify the effectiveness of the block device I/O throttling capabilities for 3 cgroups. 4 5 I/O bandwidth limitations are imposed by the testcase script and verified doing 6 I/O activity on a limited block device. Tests are supposed to be passed if the 7 I/O rates of all the different workloads always respect the I/O limitations. 8 9 TESTCASE DESCRIPTION: 10 ==================== 11 First of all we evaluate the physical I/O bandwidth (physical-io-bw) of the 12 block device where the current working directory resides. 13 14 Based on the physical I/O bandwidth three cgroups are created: cgroup-1, 15 cgroup-2, cgroup-3. Cgroups use respectively the following I/O bandwidth 16 limitations: 17 - cgroup-1: physical-io-bw / 2 18 - cgroup-2: physical-io-bw / 4 19 - cgroup-3: physical-io-bw / 8 20 21 Each test is considered passed only if the I/O limitations above are respected. 22 23 Currently the following different scenarios are tested: 24 - 1 single stream per cgroup using leaky-bucket I/O throttling 25 - 1 single stream per cgroup using token-bucket I/O throttling 26 - 2 parallel streams per cgroup using leaky-bucket I/O throttling 27 - 2 parallel streams per cgroup using token-bucket I/O throttling 28 - 4 parallel streams per cgroup using leaky-bucket I/O throttling 29 - 4 parallel streams per cgroup using token-bucket I/O throttling 30 31 For any other information please refer to 32 Documentation/controllers/io-throttle.txt in kernel documentation. 33 34 Questions? 35 ---------- 36 Send email to: righi.andrea (a] gmail.com 37