Currently I'm trying to setup a test scenario with the use of Debian Wheezy with its default kernel 3.2.60-1+deb7u3 and the cgroups blkio controller. The calculation of blkio.weight is not working for me.

My setup is the following, I have a root cgroup in /sys/fs/cgroup where the default blkio.weight is 1000. Now I created 2 SubGroups (/sys/fs/cgroup/grp1 @ blkio.weight:800, /sys/fs/cgroup/grp2 @ blkio.weight:200) which write on 2 different LVM volumes on the same physical device, getting the following fio results:

  read : io=3276.2MB, bw=1224.8KB/s, iops=400 , runt=2740822msec
  write: io=839516KB, bw=313651 B/s, iops=99 , runt=2740822msec

  read : io=3278.3MB, bw=1123.9KB/s, iops=365 , runt=2987186msec
  write: io=837351KB, bw=287041 B/s, iops=91 , runt=2987186msec

But this is obviously not an 80% to 20% share. The other Question is: There is still a blkio.weight of 1000. How is this value used?

1 Answer 1

  1. The cgroup document suggests flushing all file system buffers and free pagecache, dentries and inodes using the following commands:

    ~]# sync

    ~]# echo 3 > /proc/sys/vm/drop_caches

  2. It's possible you have not reached the peak of IOPS. What device you are using? Is 400 iops normal for your device or it's low? Increase io-depth and num-jobs in FIO to get to the peak IOPS for your device.

  • Thanks for the answer, but I abolished cgroups a year ago. Mar 4, 2016 at 9:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .