OpenVZ Forum - RDF feed
type: channel
items: [PATCH 0/2] dm-ioband: I/O bandwidth controller v1.0.0: Introduction
items: [PATCH 1/2] dm-ioband: I/O bandwidth controller v1.0.0: Source code and patch
items: [PATCH 2/2] dm-ioband: I/O bandwidth controller v1.0.0: Document

[PATCH 0/2] dm-ioband: I/O bandwidth controller v1.0.0: Introduction
type: item
description: Hi everyone, This is dm-ioband version 1.0.0 release. Dm-ioband is an I/O bandwidth controller implemented as a device-mapper driver, which gives specified bandwidth to each job running on the same physical device. - Can be applied to the kernel 2.6.26-rc2-mm1. - Changes from 0.0.4 (24th April): - Performance tuning - A new bandwidth control policy is added. This policy controls bandwidth based on the number of I/O sectors instead of the number of I/O requests. I think it would be useful for some applications such as video streaming or when you want to use high-end storages. - Control read and write requests separately. So even if a write I/O queue in an elevator is full, read I/O requests won't be blocked. - More accurate bandwidth control. - Code cleanups. Remove the "LINUX_VERSION_CODE" and "inline" stuff. - Fix panic on "dmsetup suspend." For more details, please refer to: http://people.valinux.co.jp/~ryov/dm-ioband/ Thanks, Ryo Tsuruta _______________________________________________ Containers mailing list Containers@lists.linux-foundation.org https://lists.linux-foundation.org/mailman/listinfo/containers
creator: Ryo Tsuruta
date: 2008-05-19T08:22:38-00:00

[PATCH 1/2] dm-ioband: I/O bandwidth controller v1.0.0: Source code and patch
type: item
description: Here is the patch of dm-ioband. Based on 2.6.26-rc2-mm1 Signed-off-by: Ryo Tsuruta <ryov@valinux.co.jp> Signed-off-by: Hirokazu Takahashi <taka@valinux.co.jp> diff -uprN linux-2.6.26-rc2-mm1.orig/drivers/md/Kconfig linux-2.6.26-rc2-mm1/drivers/md/Kconfig --- linux-2.6.26-rc2-mm1.orig/drivers/md/Kconfig 2008-05-16 16:20:23.000000000 +0900 +++ linux-2.6.26-rc2-mm1/drivers/md/Kconfig 2008-05-19 14:22:37.000000000 +0900 @@ -271,4 +271,17 @@ config DM_UEVENT ---help--- Generate udev events for DM events. +config DM_IOBAND + tristate "I/O bandwidth control (EXPERIMENTAL)" + depends on BLK_DEV_DM && EXPERIMENTAL + ---help--- + This device-mapper target allows to define how the + available bandwith of a storage device should be + shared between processes, cgroups, the partitions or the LUNs. + + Information on how to use dm-ioband is available in: + <file:Documentation/device-mapper/ioband.txt>. + + If unsure, say N. + endif # MD diff -uprN linux-2.6.26-rc2-mm1.orig/drivers/md/Makefile linux-2.6.26-rc2-mm1/drivers/md/Makefile --- linux-2.6.26-rc2-mm1.orig/drivers/md/Makefile 2008-05-16 16:20:23.000000000 +0900 +++ linux-2.6.26-rc2-mm1/drivers/md/Makefile 2008-05-19 14:22:37.000000000 +0900 @@ -7,6 +7,7 @@ dm-mod-objs := dm.o dm-table.o dm-target dm-multipath-objs := dm-path-selector.o dm-mpath.o dm-snapshot-objs := dm-snap.o dm-exception-store.o dm-mirror-objs := dm-raid1.o +dm-ioband-objs := dm-ioband-ctl.o dm-ioband-policy.o dm-ioband-type.o md-mod-objs := md.o bitmap.o raid456-objs := raid5.o raid6algos.o raid6recov.o raid6tables.o \ raid6int1.o raid6int2.o raid6int4.o \ @@ -36,6 +37,7 @@ obj-$(CONFIG_DM_MULTIPATH) += dm-multipa obj-$(CONFIG_DM_SNAPSHOT) += dm-snapshot.o obj-$(CONFIG_DM_MIRROR) += dm-mirror.o dm-log.o obj-$(CONFIG_DM_ZERO) += dm-zero.o +obj-$(CONFIG_DM_IOBAND) += dm-ioband.o quiet_cmd_unroll = UNROLL $@ cmd_unroll = $(PERL) $(srctree)/$(src)/unroll.pl $(UNROLL) \ diff -uprN linux-2.6.26-rc2-mm1.orig/drivers/md/dm-ioband-ctl.c linux-2.6.26-rc2-mm1/drivers…
creator: Ryo Tsuruta
date: 2008-05-19T08:23:34-00:00

[PATCH 2/2] dm-ioband: I/O bandwidth controller v1.0.0: Document
type: item
description: Here is the document of dm-ioband. Based on 2.6.26-rc2-mm1 Signed-off-by: Ryo Tsuruta <ryov@valinux.co.jp> Signed-off-by: Hirokazu Takahashi <taka@valinux.co.jp> diff -uprN linux-2.6.26-rc2-mm1.orig/Documentation/device-mapper/ioband.txt linux-2.6.26-rc2-mm1/Documentation/device-mapper/ioband.txt --- linux-2.6.26-rc2-mm1.orig/Documentation/device-mapper/ioband.txt 1970-01-01 09:00:00.000000000 +0900 +++ linux-2.6.26-rc2-mm1/Documentation/device-mapper/ioband.txt 2008-05-19 14:22:37.000000000 +0900 @@ -0,0 +1,899 @@ + Block I/O bandwidth control: dm-ioband + + ------------------------------------------------------- + + Table of Contents + + [1]What's dm-ioband all about? + + [2]Differences from the CFQ I/O scheduler + + [3]How dm-ioband works. + + [4]Setup and Installation + + [5]Getting started + + [6]Command Reference + + [7]Examples + +What's dm-ioband all about? + + dm-ioband is an I/O bandwidth controller implemented as a device-mapper + driver. Several jobs using the same physical device have to share the + bandwidth of the device. dm-ioband gives bandwidth to each job according + to its weight, which each job can set its own value to. + + At this time, a job is a group of processes with the same pid or pgrp or + uid. There is also a plan to make it support cgroup. A job can also be a + virtual machine such as KVM or Xen. + + +------+ +------+ +------+ +------+ +------+ +------+ + |cgroup| |cgroup| | the | | pid | | pid | | the | jobs + | A | | B | |others| | X | | Y | |others| + +--|---+ +--|---+ +--|---+ +--|---+ +--|---+ +--|---+ + +--V----+---V---+----V---+ +--V----+---V---+----V---+ + | group | group | default| | group | group | default| ioband groups + | | | group | | | | group | + +-------+-------+--------+ +-------+-------+--------+ + | ioband1 | | ioband2 | ioband devices + +-----------|------------+ +-----------|------------+ + +-----------V--------------+-------------V------------+ + | | | + | sdb1 | sdb2 | physical devices + +-----------------------…
creator: Ryo Tsuruta
date: 2008-05-19T08:24:28-00:00