Blkio na terminologia do cgroup significa < em> acesso a E / S em dispositivos de bloco . Não parece ser uma questão de regulamentar todas as maneiras diferentes que os desenvolvedores de software têm em mãos para fins relacionados a E / S.
Parece estar voltado principalmente para E / S em dispositivos , não no modo como o software tem acesso aos dispositivos. Pode limitar o número de iops, a largura de banda ou um peso com outros processos, em outras coisas. Parece que a gravação em buffer não é suportada pelo blockio no momento. Está na documentação oficial :
Currently, the Block I/O subsystem does not work for buffered write operations. It is primarily targeted at direct I/O, although it works for buffered read operations.
Se você der uma olhada em esta apresentação de Linda Wang e Bob Kozdemba, da Red Hat, na página 20+, você verá que o gráfico é sobre a largura de banda do dispositivo por VM, não sobre bloqueio aleatório versus E / S assíncrona.
Parece que houve recente work da Red Hat para implementá-lo diretamente no virsh. Ele foi lançado na semana passada no libvirt 0.9.9. Em alguns meses, você poderá fazer algo assim em sua distribuição favorita:
virsh blkiotune domA --device-weights /dev/sda,250
virsh blkiotune domB --device-weights /dev/sda,750