¿Cómo calcular las acciones de blkio en cgroups?

¿Cómo calcular las acciones de blkio en cgroups?

Actualmente estoy intentando configurar un escenario de prueba con el uso de Debian Wheezy con su kernel predeterminado 3.2.60-1+deb7u3 y el controlador cgroups blkio. El cálculo de blkio.weight no me funciona.

Mi configuración es la siguiente, tengo un cgroup raíz en /sys/fs/cgroup donde el blkio.weight predeterminado es 1000. Ahora creé 2 subgrupos (/sys/fs/cgroup/grp1 @ blkio.weight:800, /sys /fs/cgroup/grp2 @ blkio.weight:200) que escriben en 2 volúmenes LVM diferentes en el mismo dispositivo físico, obteniendo los siguientes resultados 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

Pero obviamente no se trata de una proporción del 80% al 20%. La otra pregunta es: todavía hay un blkio.weight de 1000. ¿Cómo se usa este valor?

Respuesta1

  1. Eldocumento del grupo csugiere vaciar todos los buffers del sistema de archivos y el pagecache, dentries e inodos libres usando los siguientes comandos:

    ~]# sincronización

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

  2. Es posible que no hayas alcanzado el pico de IOPS. ¿Qué dispositivo estás usando? ¿400 iops son normales para tu dispositivo o son bajos? Aumente la profundidad de io y el número de trabajos en FIO para alcanzar el máximo de IOPS para su dispositivo.

información relacionada