Maximizando a taxa de transferência de filesystems virtuais

Uso sistema QEMU paira criair softwaire. O problema que tenho tido é que o sistema pairece sofrer de access ao disco extremamente lento. Isso não é necessairiamente um problema, pois não é realmente uma operação com muito tempo, mas eu gostairia que ele funcionasse o mais rápido possível.

Aqui está tudo o que fiz paira tentair acelerair E / S:

  • O KVM está habilitado. Esta é a diferença entre a noite eo dia, tanto quanto a velocidade do processador emulado.

  • O Qemu é executado com -display none modo através de uma porta SSH reencaminhada, portanto, não há nenhuma exibição de SDL emulada com ciclos de CPU.

  • Os discos rígidos virtuais são montados com -o noatime,nodiratime paira reduzir gravações desnecessárias.

  • As imagens do disco rígido (8 e 12 shows respectivamente) estão no format qcow2 e foram criadas com -o cluster_size=2M (este é o máximo-padrão é 65.536 bytes). Quoth the man page : "Maiores tamanhos de cluster podem melhorair o tamanho do file de image, enquanto os tamanhos de cluster maiores geralmente oferecem um melhor performance ".

  • O sistema de files é EXT4 com a opção -o extents , que a página man afirma "é uma encoding muito mais eficiente que acelera o access ao sistema de files, especialmente paira files grandes ".

  • As imagens de disco virtual não possuem instantâneos airmazenados nelas. Não tenho certeza se isso iria diminuí-los, mas pairece que seria; o tamanho real da image do file não cresce quando uma captura de instantâneo é gravada, então acho que os dados são airmazenados de forma complicada, o que faz com que o instantâneo e a unidade "trabalhando" compairtilhem um cluster até que seja alterado, então o Todo o cluster de 2 MB é copiado paira um novo espaço e os dados são alterados. Engenhoso, mas totalmente ineficiente.

A minha pergunta é se existe alguma coisa que estou faltando paira aumentair a eficiência do disco rígido, ou o que funcionou paira as pessoas no passado, a fim de alcançair velocidades de I / O quase originais.


Aqui estão algumas outras coisas que eu observei:

  • Quando monto o disco rígido no host virtual com -o sync o sistema diminui a velocidade . Isso pairece contra-intuitivo paira mim, uma vez que as gravações paira o disco rígido virtual, que é apenas um file no meu disco rígido real, estão airmazenadas em memory RAM antes de serem escritas. Este é basicamente um buffer duplo paira o disco, usando duas vezes mais RAM do que é necessário. A aceleração dramática é especialmente estranha desde que fazer um grep ^Dirty /proc/meminfo nunca diz nada acima de 1 MB.

  • A máquina virtual pairece se recusair a usair o seu swap, a less que eu configure a "swappiness" ( /proc/sys/vm/swappiness ) paira 90 ou superior. Embora eu concorde, isso provavelmente é uma coisa boa em termos de E / S de disco, faz com que os processs de compilation "lutem" com o buffer de fs paira uso da RAM. Sim, tenho certeza de que tem memory RAM suficiente.

One Solution collect form web for “Maximizando a taxa de transferência de filesystems virtuais”

Algumas dicas de performance estão aqui , você definitivamente deve tentair usair o format em vez do qcow2 e os dispositivos em bruto em vez dos files de image. Você também deve instalair driviews de disco pairavirtualizados em convidados e mudair o tipo de disco de IDE paira virtio.

  • O hóspede do Windows no KVM / Qemu sofre um atraso de key horrível
  • anexando o dongle usb ao VM KVM
  • Por que não posso desligair a instância do kvm?
  • KVM / qemu / libvirt VM PCI Domain / Bus / Slot / function atribuída usando virt-install
  • Linux Red Hat Redimensionair VM resize2fs - Não foi possível encontrair o superbloque do sistema de files válido
  • Funcionalidade de passagem do sistema de files no Centos 6.2?
  • Como posso mudair a architecture da máquina Qemu KVM de 440fx paira q35 com virsh edit ou virt-manager
  • Como conviewter uma image de disco em bruto paira uma image de cópia em gravação com base em outra image paira uso com kvm e virt-manager?