The objective of the i/o bandwidth controller is to improve i/o performance predictability of different cgroups sharing the same block devices.
Respect to other priority/weight-based solutions the approach used by this controller is to explicitly choke applications' requests that directly (or indirectly) generate i/o activity in the system. The direct bandwidth limiting method has the advantage of improving the performance predictability at the cost of reducing, in general, the overall performance of the system (in terms of throughput). Detailed informations about design, its goal and usage are described in the documentation. Tested against latest git (2.6.26-rc8). The all-in-one patch (and previous versions) can be found at: http://download.systemimager.org/~arighi/linux/patches/io-throttle/ Most of the changes in v4 are based on the Andrew Morton's review of patchset v3. Thanks Andrew. Changelog: (v3 -> v4) - avoid potential deadlock in __set_page_dirty() with CONFIG_PREEMPT=n - do not treat partitions as separate block devices: only entire block devices are allowed to define i/o throttling rules; moreover, i/o activity on partitions is accounted to opportune entire block device they belong to. - reworked userspace<->kernel interface: accept and store all values in bytes/sec (a userspace front-end application will take care of properly showing and accepting values in human-readable format) - uninlined a lot of functions - code formatting fixes - more documentation Todo: - see documentation -Andrea _______________________________________________ Containers mailing list [EMAIL PROTECTED] https://lists.linux-foundation.org/mailman/listinfo/containers _______________________________________________ Devel mailing list Devel@openvz.org https://openvz.org/mailman/listinfo/devel