[PATCH 1/9] I/O bandwidth controller and BIO tracking
From: Ryo Tsuruta
Date: Fri Oct 02 2009 - 07:56:19 EST
Hi all,
These are new releases of dm-ioband and blkio-cgroup. The major change
of these releases is that dm-ioband handles sync/async IO requests
separately and it solves write-startve-read issue pointed out by Vivek.
Thank you Vivek for your pointing out the issue.
Subject: ioband: Writer starves reader even without competitors
http://lkml.org/lkml/2009/9/15/478
Here is the test result. I did the same test as Vivek did, it reads
32MB files four times during a bufferd writer is running.
dm-ioband v1.14.0
file # 1, plain reading it took: 0.73 seconds
file # 2, plain reading it took: 0.78 seconds
file # 3, plain reading it took: 0.78 seconds
file # 4, plain reading it took: 0.94 seconds
dm-ioband v1.13.0
file # 1, plain reading it took: 14.27 seconds
file # 2, plain reading it took: 22.17 seconds
file # 3, plain reading it took: 12.31 seconds
file # 4, plain reading it took: 17.69 seconds
The summary of the changes are below:
dm-ioband v1.14.0
- Handle sync/async IO requests separetely, it solves write-starve-read
issue.
- Allow it to compile against 2.6.32-rc1.
blkio-cgroup v13
- Fix style issues caught by checkpatch.pl.
- Allow it to compile against 2.6.32-rc1.
The list of the patches:
[PATCH 1/9] I/O bandwidth controller and BIO tracking
[PATCH 2/9] dm-ioband-1.14.0: All-in-one patch
[PATCH 3/9] blkio-cgroup-v13: The new page_cgroup framework
[PATCH 4/9] blkio-cgroup-v13: Refactoring io-context initialization
[PATCH 5/9] blkio-cgroup-v13: The body of blkio-cgroup
[PATCH 6/9] blkio-cgroup-v13: Page tracking hooks
[PATCH 7/9] blkio-cgroup-v13: The document of blkio-cgroup
[PATCH 8/9] blkio-cgroup-v13: Add a cgroup support to dm-ioband
[PATCH 9/9] blkio-cgroup-v13: The document of a cgroup support for dm-ioband
About dm-ioband
dm-ioband is an I/O bandwidth controller implemented as a
device-mapper driver and can control bandwidth on per partition, per
user, per process, per virtual machine (such as KVM or Xen) basis.
About blkio-cgruop
blkio-cgroup is a block I/O tracking mechanism implemented on the
cgroup memory subsystem. Using this feature the owners of any type
of I/O can be determined. This allows dm-ioband to control block I/O
bandwidth even when it is accepting delayed write requests.
dm-ioband can find the cgroup of each request. It is also for
possible that others working on I/O bandwidth throttling to use this
functionality to control asynchronous I/O with a little enhancement.
Please visit our website, the patches and more information are available.
Linux Block I/O Bandwidth Control Project
http://sourceforge.net/apps/trac/ioband/
I'd like to get some feedbacks from the list. Any comments are
appreciated.
Thanks,
Ryo Tsuruta
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/