Как рассчитать доли blkio в cgroups?

Как рассчитать доли blkio в cgroups?

В настоящее время я пытаюсь настроить тестовый сценарий с использованием Debian Wheezy с его ядром по умолчанию 3.2.60-1+deb7u3 и контроллером cgroups blkio. Расчет blkio.weight у меня не работает.

Моя настройка следующая: у меня есть корневая cgroup в /sys/fs/cgroup, где blkio.weight по умолчанию равен 1000. Теперь я создал 2 подгруппы (/sys/fs/cgroup/grp1 @ blkio.weight:800, /sys/fs/cgroup/grp2 @ blkio.weight:200), которые записывают на 2 разных тома LVM на одном физическом устройстве, получая следующие результаты fio:

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

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

Но это, очевидно, не 80% на 20% доли. Другой вопрос: есть еще blkio.weight 1000. Как используется это значение?

решение1

  1. Theдокумент cgroupпредлагает очистить все буферы файловой системы и освободить кэш страниц, dentries и inode с помощью следующих команд:

    ~]# синхронизация

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

  2. Возможно, вы не достигли пика IOPS. Какое устройство вы используете? 400 iops — это нормально для вашего устройства или мало? Увеличьте io-depth и num-jobs в FIO, чтобы достичь пика IOPS для вашего устройства.

Связанный контент